{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true,
    "id": "uudYItMGJel0"
   },
   "source": [
    "# Install Library\n",
    "\n",
    "[RDKit ](https://github.com/rdkit/rdkit)\n",
    "\n",
    "[DGL](https://github.com/dmlc/dgl/)\n",
    "\n",
    "[DGL-LifeSci](https://github.com/awslabs/dgl-lifesci)\n",
    "\n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "hidden": true
   },
   "outputs": [],
   "source": [
    "!pip install --pre dgl -f https://data.dgl.ai/wheels/cu113/repo.html\n",
    "!pip install --pre dglgo -f https://data.dgl.ai/wheels-test/repo.html"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "hidden": true,
    "id": "271tuyJSQ-m3"
   },
   "outputs": [],
   "source": [
    "%%capture\n",
    "!pip install rdkit-pypi\n",
    "!pip install dgllife"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "il7EqGqbY5pK"
   },
   "source": [
    "# Import Library"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "id": "MoyaI9ZVQ6pH"
   },
   "outputs": [],
   "source": [
    "import os\n",
    "os.environ['PYTHONHASHSEED'] = '0'\n",
    "os.environ['CUDA_VISIBLE_DEVICES']='-1'\n",
    "os.environ['TF_CUDNN_USE_AUTOTUNE'] ='0'\n",
    "\n",
    "import dgl \n",
    "import sys\n",
    "import torch\n",
    "import random\n",
    "import statistics\n",
    "import cv2\n",
    "import torchvision\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "import tensorflow as tf\n",
    "import torch.nn as nn\n",
    "import torch.nn.functional as F\n",
    "import matplotlib.pyplot as plt\n",
    "import torch.optim as optim\n",
    "\n",
    "from numpy import array\n",
    "from numpy import argmax\n",
    "from tensorflow.keras.utils import to_categorical\n",
    "from tensorflow.keras.callbacks import  History\n",
    "from dgllife.utils import smiles_to_bigraph, CanonicalAtomFeaturizer, AttentiveFPAtomFeaturizer\n",
    "from tqdm.notebook import tqdm, trange\n",
    "from sklearn.model_selection import train_test_split\n",
    "from dgllife.model import MLPPredictor\n",
    "\n",
    "from utils.general import DATASET, get_dataset, separate_active_and_inactive_data, get_embedding_vector_class, count_lablel,data_generator\n",
    "from utils.gcn_pre_trained import get_sider_model\n",
    "\n",
    "from model.heterogeneous_siamese_sider import siamese_model_attentiveFp_sider, siamese_model_Canonical_sider\n",
    "\n",
    "\n",
    "random.seed(1)\n",
    "np.random.seed(1)\n",
    "tf.random.set_seed(1)\n",
    "\n",
    "device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true,
    "id": "1RVgRpTmQ5rp"
   },
   "source": [
    "# Data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "hidden": true,
    "id": "VunMwXfRM09K",
    "outputId": "66c67adf-0024-4585-81a1-897e7ad4638c"
   },
   "outputs": [],
   "source": [
    "cache_path='./sider_dglgraph.bin'\n",
    "\n",
    "df = get_dataset(\"sider\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "hidden": true,
    "id": "rY_JnWz5M6bU"
   },
   "outputs": [],
   "source": [
    "sider_tasks = df.columns.values[1:].tolist()\n",
    "sider_tasks_test = sider_tasks[21:28]\n",
    "train_task, valid_task= train_test_split(sider_tasks, test_size=0.2 , shuffle= False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "hidden": true,
    "id": "HO5RmBnZM8mq",
    "outputId": "4b0ad369-893f-4246-bbdf-4257b3016f35"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Hepatobiliary disorders : Counter({1: 743, 0: 684})\n",
      "Metabolism and nutrition disorders : Counter({1: 996, 0: 431})\n",
      "Product issues : Counter({0: 1405, 1: 22})\n",
      "Eye disorders : Counter({1: 876, 0: 551})\n",
      "Investigations : Counter({1: 1151, 0: 276})\n",
      "Musculoskeletal and connective tissue disorders : Counter({1: 997, 0: 430})\n",
      "Gastrointestinal disorders : Counter({1: 1298, 0: 129})\n",
      "Social circumstances : Counter({0: 1176, 1: 251})\n",
      "Immune system disorders : Counter({1: 1024, 0: 403})\n",
      "Reproductive system and breast disorders : Counter({1: 727, 0: 700})\n",
      "Neoplasms benign, malignant and unspecified (incl cysts and polyps) : Counter({0: 1051, 1: 376})\n",
      "General disorders and administration site conditions : Counter({1: 1292, 0: 135})\n",
      "Endocrine disorders : Counter({0: 1104, 1: 323})\n",
      "Surgical and medical procedures : Counter({0: 1214, 1: 213})\n",
      "Vascular disorders : Counter({1: 1108, 0: 319})\n",
      "Blood and lymphatic system disorders : Counter({1: 885, 0: 542})\n",
      "Skin and subcutaneous tissue disorders : Counter({1: 1318, 0: 109})\n",
      "Congenital, familial and genetic disorders : Counter({0: 1174, 1: 253})\n",
      "Infections and infestations : Counter({1: 1006, 0: 421})\n",
      "Respiratory, thoracic and mediastinal disorders : Counter({1: 1060, 0: 367})\n",
      "Psychiatric disorders : Counter({1: 1016, 0: 411})\n",
      "Renal and urinary disorders : Counter({1: 911, 0: 516})\n",
      "Pregnancy, puerperium and perinatal conditions : Counter({0: 1302, 1: 125})\n",
      "Ear and labyrinth disorders : Counter({0: 768, 1: 659})\n",
      "Cardiac disorders : Counter({1: 988, 0: 439})\n",
      "Nervous system disorders : Counter({1: 1304, 0: 123})\n",
      "Injury, poisoning and procedural complications : Counter({1: 946, 0: 481})\n"
     ]
    }
   ],
   "source": [
    "from collections import Counter\n",
    "\n",
    "one = []\n",
    "zero = []\n",
    "\n",
    "for task in sider_tasks:\n",
    "  data = df[task]\n",
    "  print(task ,\":\" ,Counter(data))\n",
    "  zero.append(Counter(data)[0])\n",
    "  one.append(Counter(data)[1])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 894
    },
    "hidden": true,
    "id": "ZZcv6iPNNS19",
    "outputId": "6c6f9597-0181-4b83-8e31-943902aedb01"
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABmIAAATWCAYAAAA2BLk9AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB/fklEQVR4nOzde5iVdb3//9eSGUAURsBgmEQxRcw0zUOKWeCGwAPiNyoPqFmamWVuPMulboESC7+JBWknCw946KB9LQvPaaZGoliaSiqhJUgmgQcEhPX7w59rNwIKOB8H5PG4rnVdzL0+91rve83e6Pa5P/eqVKvVagAAAAAAAGhxG7T2AAAAAAAAAO9WQgwAAAAAAEAhQgwAAAAAAEAhQgwAAAAAAEAhQgwAAAAAAEAhQgwAAAAAAEAhQgwAAAAAAEAhQgwAAAAAAEAhQgwAAAAAAEAhQgwAALxL/OEPf8gnPvGJbL755mnXrl26d++evn375uSTT262rn///unfv/9bvt7f/va3VCqVTJo0qczAq+C3v/1tKpVKfvvb3672uXfffXdGjRqVf//73y0+15r49a9/nVGjRr3t13nj729t+D0BAAArJ8QAAMC7wA033JA999wzCxYsyLhx43LTTTflW9/6Vj7ykY/kmmuuabb2oosuykUXXdRKk75z7r777owePXqtCjGjR49u8dft0aNH7rnnnuy///4t/toAAMDbV9faAwAAAG/fuHHjsuWWW+bGG29MXd3//mv+IYccknHjxjVbu912273T4yVJFi5cmPbt26dSqbTK+79btWvXLnvssUervPfLL7+cDh06tMp7AwDAusKOGAAAeBf417/+lU033bRZhHndBhs0/9f+Fd2a7JlnnslBBx2Ujh07pqGhIQcffHDmzJmzwve67777MnTo0HTp0iXt27fPhz70ofzkJz9ptmbSpEmpVCq56aabctRRR+U973lPOnTokEWLFq30Gh599NHss88+6dChQzbddNN88YtfzAsvvLDcuptvvjkHHnhgNttss7Rv3z5bb711jj322Dz33HO1NaNGjcqpp56aJNlyyy1TqVSa3eLsmmuuyaBBg9KjR49suOGGef/7358zzjgjL730UrP3evLJJ3PIIYekqampdru3AQMGZPr06c3WXXPNNenbt2822mijbLzxxhk8eHAeeOCB2vOf/exn853vfCdJarNUKpX87W9/W+nnUa1WM27cuGyxxRZp3759dt555/zmN79Zbt2Kbk32+OOP53Of+1x69+6dDh065L3vfW8OOOCA/PnPf17u/IcffjiDBg1Khw4d8p73vCdf/vKXc8MNNyx3S7j+/ftn++23z5133pk999wzHTp0yFFHHbVan+dnP/vZbLzxxnn00UczePDgbLTRRunRo0e+/vWvJ0nuvffe7LXXXtloo42yzTbb5NJLL13p5wMAAOsKO2IAAOBdoG/fvvnhD3+YE044IYcddlh23nnn1NfXr9K5CxcuzMCBA/PMM8/kvPPOyzbbbJMbbrghBx988HJrb7/99uyzzz7Zfffd893vfjcNDQ25+uqrc/DBB+fll1/OZz/72WbrjzrqqOy///65/PLL89JLL610pmeffTb9+vVLfX19LrroonTv3j2TJ0/O8ccfv9zaJ554In379s3nP//5NDQ05G9/+1suuOCC7LXXXvnzn/+c+vr6fP7zn8/zzz+fCRMm5Nprr02PHj2S/O9uoL/+9a/Zb7/9MmLEiGy00UZ59NFH841vfCNTp07NbbfdVnuv/fbbL0uXLs24ceOy+eab57nnnsvdd9/d7HZnY8eOzVlnnZXPfe5zOeuss7J48eKcf/75+ehHP5qpU6dmu+22y9lnn52XXnopP/vZz3LPPffUzn19rhUZPXp0Ro8enaOPPjqf+tSn8vTTT+eYY47J0qVL06dPn5Wel7wW1rp27Zqvf/3rec973pPnn38+l156aXbfffc88MADtfNnz56dfv36ZaONNsrFF1+cbt265aqrrlrh5/76+sMPPzynnXZaxo4dW4t8q/p5JsmSJUsybNiwfPGLX8ypp56aK6+8MiNHjsyCBQvy85//PKeffno222yzTJgwIZ/97Gez/fbbZ5dddnnT6wUAgLVaFQAAWOc999xz1b322quapJqkWl9fX91zzz2r5513XvWFF15otrZfv37Vfv361X6++OKLq0mq/+///b9m64455phqkuqPf/zj2rFtt922+qEPfai6ZMmSZmuHDBlS7dGjR3Xp0qXVarVa/fGPf1xNUv3MZz6zSvOffvrp1UqlUp0+fXqz4x//+MerSaq33377Cs9btmxZdcmSJdVZs2Ytdw3nn39+NUl15syZb/rer7/GHXfcUU1SffDBB6vV6mufaZLqhRdeuNJzn3rqqWpdXV31K1/5SrPjL7zwQrWxsbF60EEH1Y59+ctfrq7q/wk2b968avv27auf+MQnmh3//e9/X03S7Pc3c+bM5X5Pb/Tqq69WFy9eXO3du3f1xBNPrB0/9dRTq5VKpfrwww83Wz948ODlPvd+/fpVk1RvvfXWN519ZZ9ntVqtHnnkkdUk1Z///Oe1Y0uWLKm+5z3vqSap3n///bXj//rXv6pt2rSpnnTSSW/6fgAAsLZzazIAAHgX6Nq1a373u9/lj3/8Y77+9a/nwAMPzIwZMzJy5MjssMMOzW7b9Ua33357OnbsmKFDhzY7Pnz48GY/P/7443n00Udz2GGHJUleffXV2mO//fbL7Nmz89hjjzU755Of/OQqzX/77bfnAx/4QHbcccc3nSFJ5s6dmy9+8Yvp2bNn6urqUl9fny222CJJ8sgjj6zS+z355JMZPnx4Ghsb06ZNm9TX16dfv37NXqNLly7Zaqutcv755+eCCy7IAw88kGXLljV7nRtvvDGvvvpqPvOZzzT7PNq3b59+/fo1u7XX6rjnnnvyyiuv1D7r1+255561a30zr776asaOHZvtttsubdu2TV1dXdq2bZu//vWvzT6jO+64I9tvv/1y3xt06KGHrvB1O3funP/6r/9a7viqfJ6vq1Qq2W+//Wo/19XVZeutt06PHj3yoQ99qHa8S5cu6datW2bNmvWW1wsAAGsztyYDAIB3kV133TW77rprktduAXX66adn/PjxGTduXMaNG7fCc/71r3+le/fuyx1vbGxs9vOzzz6bJDnllFNyyimnrPC13hh83uzWW2+cYcstt3zLGZYtW5ZBgwblmWeeydlnn50ddtghG220UZYtW5Y99tgjCxcufMv3evHFF/PRj3407du3z9e+9rVss8026dChQ55++ukMGzas9hqVSiW33nprxowZk3HjxuXkk09Oly5dcthhh+Xcc89Nx44da5/JbrvttsL3euP386yqf/3rXyu8/pUde6OTTjop3/nOd3L66aenX79+6dy5czbYYIN8/vOfb/YZrexzX9H/PCQr/n2u6uf5ug4dOqR9+/bNjrVt2zZdunRZ7rXbtm2bV1555S2vFwAA1mZCDAAAvEvV19fnnHPOyfjx4/PQQw+tdF3Xrl0zderU5Y7PmTOn2c+bbrppkmTkyJEZNmzYCl/rjd9dUqlUVmnWrl27Lvd+K5rhoYceyoMPPphJkyblyCOPrB1//PHHV+l9kuS2227LM888k9/+9re1XRtJmn3vy+u22GKLXHLJJUmSGTNm5Cc/+UlGjRqVxYsX57vf/W7tM/nZz362SjtVVlXXrl2TLH/9rx/r1avXm55/xRVX5DOf+UzGjh3b7Phzzz2XTTbZpNn7vB6T3vgeK7Ki3+fqfJ4AALA+cmsyAAB4F5g9e/YKj79+W6impqaVnrv33nvnhRdeyPXXX9/s+JVXXtns5z59+qR379558MEHaztv3vjo2LHjGs2/99575+GHH86DDz74pjO8HgLatWvX7Pj3vve95V7z9TVv3JGxOq/xn7bZZpucddZZ2WGHHXL//fcnSQYPHpy6uro88cQTK/1M3mqeFdljjz3Svn37TJ48udnxu+++e5Vu1VWpVJa7vhtuuCH/+Mc/mh3r169fHnroofzlL39pdvzqq69+y/f4z/dKVv/zBACA9YUdMQAA8C4wePDgbLbZZjnggAOy7bbbZtmyZZk+fXq++c1vZuONN85///d/r/Tcz3zmMxk/fnw+85nP5Nxzz03v3r3z61//OjfeeONya7/3ve9l3333zeDBg/PZz342733ve/P888/nkUceyf3335+f/vSnazT/iBEj8qMf/Sj7779/vva1r6V79+6ZPHlyHn300Wbrtt1222y11VY544wzUq1W06VLl/zyl7/MzTffvNxr7rDDDkmSb33rWznyyCNTX1+fPn36ZM8990znzp3zxS9+Meecc07q6+szefLk5SLQn/70pxx//PH59Kc/nd69e6dt27a57bbb8qc//SlnnHFGkqRXr14ZM2ZMzjzzzDz55JPZZ5990rlz5zz77LOZOnVqNtpoo4wePbrZPN/4xjey7777pk2bNvngBz+Ytm3bLjd7586dc8opp+RrX/taPv/5z+fTn/50nn766YwaNWqVbk02ZMiQTJo0Kdtuu20++MEPZtq0aTn//POz2WabrfBz33fffTNmzJh07949V155Ze1zX5Vbq63q5wkAAOsrO2IAAOBd4Kyzzkrnzp0zfvz4DB06NPvuu2++/e1vZ+DAgZk6dWotAqxIhw4dctttt2XgwIE544wz8qlPfSp///vfV7grYu+9987UqVOzySabZMSIERk4cGCOO+643HLLLRk4cOAaz9/Y2Jg77rgj2223XY477rgcfvjhad++fSZOnNhsXX19fX75y19mm222ybHHHptDDz00c+fOzS233LLca/bv3z8jR47ML3/5y+y1117ZbbfdMm3atHTt2jU33HBDOnTokMMPPzxHHXVUNt5441xzzTXLzbTVVlvloosuyqc+9akceOCB+eUvf5lvfvObGTNmTG3dyJEj87Of/SwzZszIkUcemcGDB+e0007LrFmz8rGPfay2bvjw4fn85z+fiy66KH379s1uu+2WZ555ZqWfyZgxY3LeeeflpptuytChQzNhwoR897vfXe72byvyrW99K4cffnjOO++8HHDAAbn++utz7bXXZquttmq2rqmpKXfccUe22WabfPGLX8xhhx2Wtm3b1q7vP29jtjKr+nkCAMD6qlKtVqutPQQAAABrjy984Qu56qqr8q9//WuFO3YAAIBV59ZkAAAA67ExY8akqakp73vf+/Liiy/mV7/6VX74wx/mrLPOEmEAAKAFCDEAAADrsfr6+px//vn5+9//nldffTW9e/fOBRdc8KbfKwQAAKw6tyYDAAAAAAAoZIPWHgAAAAAAAODdSogBAAAAAAAoRIgBAAAAAAAopK61B1hXLFu2LM8880w6duyYSqXS2uMAAAAAAACtqFqt5oUXXkhTU1M22GDl+16EmFX0zDPPpGfPnq09BgAAAAAAsBZ5+umns9lmm630eSFmFXXs2DHJax9op06dWnkaAAAAAACgNS1YsCA9e/as9YOVEWJW0eu3I+vUqZMQAwAAAAAAJMlbfp3Jym9aBgAAAAAAwNsixAAAAAAAABQixAAAAAAAABTiO2IAAAAAAKAVVavVvPrqq1m6dGlrj8J/aNOmTerq6t7yO2DeihADAAAAAACtZPHixZk9e3Zefvnl1h6FFejQoUN69OiRtm3brvFrCDEAAAAAANAKli1blpkzZ6ZNmzZpampK27Zt3/buC1pGtVrN4sWL889//jMzZ85M7969s8EGa/ZtL0IMAAAAAAC0gsWLF2fZsmXp2bNnOnTo0Nrj8AYbbrhh6uvrM2vWrCxevDjt27dfo9dZs3wDAAAAAAC0iDXdaUF5LfG78dsFAAAAAAAoRIgBAAAAAAAoxHfEAAAAAADAWqQyuvKOvl/1nOo7+n4rMmnSpIwYMSL//ve/W3uUFmdHDAAAAAAAsNruvvvutGnTJvvss89qnderV69ceOGFzY4dfPDBmTFjRgtOt/YQYgAAAAAAgNX2ox/9KF/5yldy11135amnnnpbr7XhhhumW7duLTTZ2kWIAQAAAAAAVstLL72Un/zkJznuuOMyZMiQTJo0qdnz119/fXbddde0b98+m266aYYNG5Yk6d+/f2bNmpUTTzwxlUollcprt2GbNGlSNtlkkyTJY489lkqlkkcffbTZa15wwQXp1atXqtXXbqX2l7/8Jfvtt1823njjdO/ePUcccUSee+65she+BoQYAAAAAABgtVxzzTXp06dP+vTpk8MPPzw//vGPa4HkhhtuyLBhw7L//vvngQceyK233ppdd901SXLttddms802y5gxYzJ79uzMnj17udfu06dPdtlll0yePLnZ8SuvvDLDhw9PpVLJ7Nmz069fv+y000657777MmXKlDz77LM56KCDyl/8aqpr7QEAAAAAAIB1yyWXXJLDDz88SbLPPvvkxRdfzK233pqBAwfm3HPPzSGHHJLRo0fX1u+4445Jki5duqRNmzbp2LFjGhsbV/r6hx12WCZOnJivfvWrSZIZM2Zk2rRpueyyy5IkF198cXbeeeeMHTu2ds6PfvSj9OzZMzNmzMg222zT4te8puyIAQAAAAAAVtljjz2WqVOn5pBDDkmS1NXV5eCDD86PfvSjJMn06dMzYMCAt/UehxxySGbNmpV77703STJ58uTstNNO2W677ZIk06ZNy+23356NN9649th2222TJE888cTbeu+WZkcMAAAAAACwyi655JK8+uqree9731s7Vq1WU19fn3nz5mXDDTd82+/Ro0eP7L333rnyyiuzxx575Kqrrsqxxx5be37ZsmU54IAD8o1vfGOF565NhBgAAAAAAGCVvPrqq7nsssvyzW9+M4MGDWr23Cc/+clMnjw5H/zgB3Prrbfmc5/73Apfo23btlm6dOlbvtdhhx2W008/PYceemieeOKJ2g6cJNl5553z85//PL169Upd3dqdOtyaDAAAAAAAWCW/+tWvMm/evBx99NHZfvvtmz0+9alP5ZJLLsk555yTq666Kuecc04eeeSR/PnPf864ceNqr9GrV6/ceeed+cc//pHnnntupe81bNiwLFiwIMcdd1z23nvvZjtwvvzlL+f555/PoYcemqlTp+bJJ5/MTTfdlKOOOmqVIs87ae3ORAAAAAAAsJ6pnlNt7RFW6pJLLsnAgQPT0NCw3HOf/OQnM3bs2HTq1Ck//elP89WvfjVf//rX06lTp3zsYx+rrRszZkyOPfbYbLXVVlm0aFGq1RVfb6dOnXLAAQfkpz/9ae37Z17X1NSU3//+9zn99NMzePDgLFq0KFtssUX22WefbLDB2rUHpVJd2RXSzIIFC9LQ0JD58+enU6dOrT0OAAAAAADruFdeeSUzZ87Mlltumfbt27f2OKzAm/2OVrUbrF1ZCAAAAAAA4F1EiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAgLVIpfLOPtZE//79M2LEiBa97tU1adKkbLLJJq06w6oQYgAAAAAAgNVy7bXX5qtf/eo79n69evXKhRde2OzYwQcfnBkzZrxjM6yputYeAAAAAAAAWLd06dKltUfIhhtumA033LC1x3hLdsQAAAAAAACr5T9vTdarV6+MHTs2Rx11VDp27JjNN9883//+95utP/3007PNNtukQ4cOed/73pezzz47S5Ysabbm+uuvz6677pr27dtn0003zbBhw2rvNWvWrJx44ompVCqp/P/3U/vPW5M99thjqVQqefTRR5u95gUXXJBevXqlWq0mSf7yl79kv/32y8Ybb5zu3bvniCOOyHPPPdfSH08zQgwAAAAAAPC2fPOb38yuu+6aBx54IF/60pdy3HHHNYsiHTt2zKRJk/KXv/wl3/rWt/KDH/wg48ePrz1/ww03ZNiwYdl///3zwAMP5NZbb82uu+6a5LXboG222WYZM2ZMZs+endmzZy/3/n369Mkuu+ySyZMnNzt+5ZVXZvjw4alUKpk9e3b69euXnXbaKffdd1+mTJmSZ599NgcddFChT+U1bk0GAAAAAAC8Lfvtt1++9KUvJXlt98v48ePz29/+Nttuu22S5Kyzzqqt7dWrV04++eRcc801Oe2005Ik5557bg455JCMHj26tm7HHXdM8tpt0Nq0aZOOHTumsbFxpTMcdthhmThxYu27a2bMmJFp06blsssuS5JcfPHF2XnnnTN27NjaOT/60Y/Ss2fPzJgxI9tss01LfBTLsSMGAAAAAAB4Wz74wQ/W/lypVNLY2Ji5c+fWjv3sZz/LXnvtlcbGxmy88cY5++yz89RTT9Wenz59egYMGPC2ZjjkkEMya9as3HvvvUmSyZMnZ6eddsp2222XJJk2bVpuv/32bLzxxrXH66HoiSeeeFvv/WaEGAAAAAAA4G2pr69v9nOlUsmyZcuSJPfee28OOeSQ7LvvvvnVr36VBx54IGeeeWYWL15cW7/hhhu+7Rl69OiRvffeO1deeWWS5Kqrrsrhhx9ee37ZsmU54IADMn369GaPv/71r/nYxz72tt9/ZdyaDAAAAAAAKOb3v/99tthii5x55pm1Y7NmzWq25oMf/GBuvfXWfO5zn1vha7Rt2zZLly59y/c67LDDcvrpp+fQQw/NE088kUMOOaT23M4775yf//zn6dWrV+rq3rk8YkcMAAAAAABQzNZbb52nnnoqV199dZ544ol8+9vfznXXXddszTnnnJOrrroq55xzTh555JH8+c9/zrhx42rP9+rVK3feeWf+8Y9/5Lnnnlvpew0bNiwLFizIcccdl7333jvvfe97a899+ctfzvPPP59DDz00U6dOzZNPPpmbbropRx111CpFnjUlxAAAAAAAwFqkWn1nH6UdeOCBOfHEE3P88cdnp512yt13352zzz672Zr+/fvnpz/9aa6//vrstNNO+a//+q/84Q9/qD0/ZsyY/O1vf8tWW22V97znPSt9r06dOuWAAw7Igw8+mMMOO6zZc01NTfn973+fpUuXZvDgwdl+++3z3//932loaMgGG5TLJZVq9Z34mNd9CxYsSENDQ+bPn59OnTq19jgAAAAAAKzjXnnllcycOTNbbrll2rdv39rjsAJv9jta1W5gRwwAAAAAAEAhQgwAAAAAAEAhQgwAAAAAAEAhQgwAAAAAAEAhQgwAAAAAALSiarXa2iOwEi3xuxFiAAAAAACgFdTX1ydJXn755VaehJV5/Xfz+u9qTdS11DAAAAAAAMCqa9OmTTbZZJPMnTs3SdKhQ4dUKpVWnorktZ0wL7/8cubOnZtNNtkkbdq0WePXEmIAAAAAAKCVNDY2JkktxrB22WSTTWq/ozUlxAAAAAAAQCupVCrp0aNHunXrliVLlrT2OPyH+vr6t7UT5nWtGmLuvPPOnH/++Zk2bVpmz56d6667Lv/n//yfFa499thj8/3vfz/jx4/PiBEjascXLVqUU045JVdddVUWLlyYAQMG5KKLLspmm21WWzNv3ryccMIJuf7665MkQ4cOzYQJE7LJJpsUvDpY+1RGr/62xuo5vigMAAAAAEpr06ZNi/xHf9Y+G7Tmm7/00kvZcccdM3HixDdd94tf/CJ/+MMf0tTUtNxzI0aMyHXXXZerr746d911V1588cUMGTIkS5cura0ZPnx4pk+fnilTpmTKlCmZPn16jjjiiBa/HgAAAAAAgP/Uqjti9t133+y7775vuuYf//hHjj/++Nx4443Zf//9mz03f/78XHLJJbn88sszcODAJMkVV1yRnj175pZbbsngwYPzyCOPZMqUKbn33nuz++67J0l+8IMfpG/fvnnsscfSp0+fFb7vokWLsmjRotrPCxYseDuXCgAAAAAArIdadUfMW1m2bFmOOOKInHrqqfnABz6w3PPTpk3LkiVLMmjQoNqxpqambL/99rn77ruTJPfcc08aGhpqESZJ9thjjzQ0NNTWrMh5552XhoaG2qNnz54teGUAAAAAAMD6YK0OMd/4xjdSV1eXE044YYXPz5kzJ23btk3nzp2bHe/evXvmzJlTW9OtW7flzu3WrVttzYqMHDky8+fPrz2efvrpt3ElAAAAAADA+qhVb032ZqZNm5Zvfetbuf/++1OprN4XjFer1WbnrOj8N655o3bt2qVdu3ar9b4AAAAAAAD/aa3dEfO73/0uc+fOzeabb566urrU1dVl1qxZOfnkk9OrV68kSWNjYxYvXpx58+Y1O3fu3Lnp3r17bc2zzz673Ov/85//rK0BAAAAAAAoYa0NMUcccUT+9Kc/Zfr06bVHU1NTTj311Nx4441Jkl122SX19fW5+eaba+fNnj07Dz30UPbcc88kSd++fTN//vxMnTq1tuYPf/hD5s+fX1sDAAAAAABQQqvemuzFF1/M448/Xvt55syZmT59erp06ZLNN988Xbt2bba+vr4+jY2N6dOnT5KkoaEhRx99dE4++eR07do1Xbp0ySmnnJIddtghAwcOTJK8//3vzz777JNjjjkm3/ve95IkX/jCFzJkyJDa6wAAAAAAAJTQqiHmvvvuy9577137+aSTTkqSHHnkkZk0adIqvcb48eNTV1eXgw46KAsXLsyAAQMyadKktGnTprZm8uTJOeGEEzJo0KAkydChQzNx4sSWuxAAAAAAAIAVqFSr1WprD7EuWLBgQRoaGjJ//vx06tSptceBNVIZXVnt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AAAAAACAQoQYAAAAAACAQoQYAAAAAACAQoQYAAAAAACAQupaewAA1lylsvrnVKstPwcAAAAAsGJ2xAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABQixAAAAAAAABRS19oDAAAA0LoqldU/p1pt+TkAAODdyI4YAAAAAACAQoQYAAAAAACAQtyaDAAAWC2V0at/H6vqOe5jBQAArJ/siAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAAChEiAEAAAAAACikrrUHAAAAAGDtVqms/jnVasvPAQDrIjtiAAAAAAAAChFiAAAAAAAAChFiAAAAAAAAChFiAAAAAAAAChFiAAAAAAAAChFiAAAAAAAACqlr7QEAACBJKqMrq31O9ZxqgUkAAACg5dgRAwAAAAAAUIgQAwAAAAAAUIgQAwAAAAAAUIgQAwAAAAAAUIgQAwAAAAAAUIgQAwAAAAAAUIgQAwAAAAAAUIgQAwAAAAAAUIgQAwAA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KRtuuGH69++fhx9+uNnrLFq0KF/5yley6aabZqONNsrQoUPz97///Z2+HAAAAAAAYD2zVoeYb3zjG/nud7+biRMn5pFHHsm4ceNy/vnnZ8KECbU148aNywUXXJCJEyfmj3/8YxobG/Pxj388L7zwQm3NiBEjct111+Xqq6/OXXfdlRdffDFDhgzJ0qVLW+OyAAAAAACA9URdaw/wZu65554ceOCB2X///ZMkvXr1ylVXXZX77rsvyWu7YS688MKceeaZGTZsWJLk0ksvTffu3XPllVfm2GOPzfz583PJJZfk8ssvz8CBA5MkV1xxRXr27JlbbrklgwcPbp2LAwAAAAAA3vXW6h0xe+21V2699dbMmDEjSfLggw/mrrvuyn777ZckmTlzZubMmZNBgwbVzmnXrl369euXu+++O0kybdq0LFmypNmapqambL/99rU1K7Jo0aIsWLCg2QMAAAAAAGB1rNU7Yk4//fTMnz8/2267bdq0aZOlS5fm3HPPzaGHHpokmTNnTpKke/fuzc7r3r17Zs2aVVvTtm3bdO7cebk1r5+/Iuedd15Gjx7dkpcDAAAAAACsZ9bqHTHXXHNNrrjiilx55ZW5//77c+mll+b//t//m0svvbTZukql0uznarW63LE3eqs1I0eOzPz582uPp59+es0vBAAAAAAAWC+t1TtiTj311Jxxxhk55JBDkiQ77LBDZs2alfPOOy9HHnlkGhsbk7y266VHjx618+bOnVvbJdPY2JjFixdn3rx5zXbFzJ07N3vuuedK37tdu3Zp165dicsCAAAAAADWE2v1jpiXX345G2zQfMQ2bdpk2bJlSZItt9wyjY2Nufnmm2vPL168OHfccUctsuyyyy6pr69vtmb27Nl56KGH3jTEAAAAAAAAvF1r9Y6YAw44IOeee24233zzfOADH8gDDzyQCy64IEcddVSS125JNmLEiIwdOza9e/dO7969M3bs2HTo0CHDhw9PkjQ0NOToo4/OySefnK5du6ZLly455ZRTssMOO2TgwIGteXkAAAAAAMC73FodYiZMmJCzzz47X/rSlzJ37tw0NTXl2GOPzf/8z//U1px22mlZuHBhvvSlL2XevHnZfffdc9NNN6Vjx461NePHj09dXV0OOuigLFy4MAMGDMikSZPSpk2b1rgsAAAAAABgPbFWh5iOHTvmwgsvzIUXXrjSNZVKJaNGjcqoUaNWuqZ9+/aZMGFCJkyY0PJDAgAAAAAArMRa/R0xAAAAAAAA6zIhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoBAhBgAAAAAAoJC61h4AAAAAAODdoDK6strnVM+pFpgEWJvYEQMAAAAAAFCIEAMAAAAAAFCIEAMAAAAAAFCIEAMAAAAAAFCIEAMAAAAAAFDIGoWYhQsX5uWXX679PGvWrFx44YW56aabWmwwAAAAAACAdd0ahZgDDzwwl112WZLk3//+d3bfffd885vfzIEHHpiLL764RQcEAAAAAABYV61RiLn//vvz0Y9+NEnys5/9LN27d8+sWbNy2WWX5dvf/naLDggAAAAAALCuWqMQ8/LLL6djx45JkptuuinDhg3LBhtskD322COzZs1q0QEBAAAAAADWVWsUYrbeeuv84he/yNNPP50bb7wxgwYNSpLMnTs3nTp1atEBAQAAAAAA1lVrFGL+53/+J6ecckp69eqVD3/4w+nbt2+S13bHfOhDH2rRAQEAAAAAANZVdWty0qc+9anstddemT17dnbcccfa8QEDBuQTn/hEiw0HAAAAAACwLlujHTFJ0tjYmI4dO+bmm2/OwoULkyS77bZbtt122xYbDgAAAAAAYF22RiHmX//6VwYMGJBtttkm++23X2bPnp0k+fznP5+TTz65RQcEAAAAAABYV61RiDnxxBNTX1+fp556Kh06dKgdP/jggzNlypQWGw4AAAAAAGBdtkbfEXPTTTflxhtvzGabbdbseO/evTNr1qwWGQwAAAAAAGBdt0Y7Yl566aVmO2Fe99xzz6Vdu3ZveygAAAAAAIB3gzUKMR/72Mdy2WWX1X6uVCpZtmxZzj///Oy9994tNhwAAAAAAMC6bI1uTXb++eenf//+ue+++7J48eKcdtppefjhh/P888/n97//fUvPCAAAAAAAsE5aox0x2223Xf70pz/lwx/+cD7+8Y/npZdeyrBhw/LAAw9kq622aukZeRepVFb/AQAAAAAA66o12hGTJI2NjRk9enRLzgIAAAAAAPCuskY7YqZMmZK77rqr9vN3vvOd7LTTThk+fHjmzZvXYsMBAAAAAACsy9YoxJx66qlZsGBBkuTPf/5zTjrppOy333558sknc9JJJ7XogAAAAAAAAOuqNbo12cyZM7PddtslSX7+85/ngAMOyNixY3P//fdnv/32a9EBAQAAAAAA1lVrtCOmbdu2efnll5Mkt9xySwYNGpQk6dKlS22nDAAAAAAAwPpujXbE7LXXXjnppJPykY98JFOnTs0111yTJJkxY0Y222yzFh0QAAAAAABgXbVGO2ImTpyYurq6/OxnP8vFF1+c9773vUmS3/zmN9lnn31adEAAAAAAAIB11RrtiNl8883zq1/9arnj48ePf9sDAQAAAAAAvFusUYj5TwsXLsySJUuaHevUqdPbfVkAAAAAAIB13hrdmuyll17K8ccfn27dumXjjTdO586dmz0AAAAAAABYwxBz2mmn5bbbbstFF12Udu3a5Yc//GFGjx6dpqamXHbZZS09IwAAAAAAwDppjW5N9stf/jKXXXZZ+vfvn6OOOiof/ehHs/XWW2eLLbbI5MmTc9hhh7X0nAAArIFKZc3Oq1Zbdg4AAABYX63Rjpjnn38+W265ZZLXvg/m+eefT5LstddeufPOO1tuOgAAAAAAgHXYGoWY973vffnb3/6WJNluu+3yk5/8JMlrO2U22WSTlpoNAAAAAABgnbZGIeZzn/tcHnzwwSTJyJEja98VM2LEiJx66qktOiAAAAAAAMC6ao2+I+bEE0+s/XnvvffOo48+mvvuuy9bb711PvjBD7bYcAAAAAAAAOuy1doRc9ttt2W77bbLggULmh3ffPPNM2DAgBx66KH53e9+16IDAgAAAAAArKtWK8RceOGFOeaYY9KpU6flnmtoaMixxx6bCy64oMWGAwAAAAAAWJetVoh58MEHs88++6z0+UGDBmXatGlveygAAAAAAIB3g9UKMc8++2zq6+tX+nxdXV3++c9/vu2hAAAAAAAA3g1WK8S8973vzZ///OeVPv+nP/0pPXr0eNtDAQAAAAAAvBusVojZb7/98j//8z955ZVXlntu4cKFOeecczJkyJAWGw4AAAAAAGBdVrc6i88666xce+212WabbXL88cenT58+qVQqeeSRR/Kd73wnS5cuzZlnnllqVgAAAAAAgHXKaoWY7t275+67785xxx2XkSNHplqtJkkqlUoGDx6ciy66KN27dy8yKAAAAAAAwLpmtUJMkmyxxRb59a9/nXnz5uXxxx9PtVpN796907lz5xLzAQAAAAAArLNWO8S8rnPnztltt91achYAAAAAAIB3lQ1aewAAAAAAAIB3KyEGAAAAAACgECEGAAAAAACgECEGAAAAAACgECEGAAAAAACgECEGAAAAAACgECEGAAAAAACgkLrWHgAAgNVXGV1ZxZXVonMAAAAAb86OGAAAAAAAgEKEGAAAAAAAgEKEGAAAAAAAgEKEGAAAAAAAgEKEGAAAAAAAgEKEGAAAAAAAgEKEGAAAAAAAgEKEGAAAAAAAgEKEGAAAAAAAgEKEGAAAAAAAgEKEGAAAAAAAgELqWnsA1n2V0ZXVWF0tNgcAAAAAAKxt7IgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAoRIgBAAAAAAAopK61BwAAAAAAWK+Mqtb+WBm16qdVq2+9Blj72BEDAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQiBADAAAAAABQyFofYv7xj3/k8MMPT9euXdOhQ4fstNNOmTZtWu35arWaUaNGpampKRtuuGH69++fhx9+uNlrLFq0KF/5yley6aabZqONNsrQoUPz97///Z2+FAAAAAAAYD2zVoeYefPm5SMf+Ujq6+vzm9/8Jn/5y1/yzW9+M5tsskltzbhx43LBBRdk4sSJ+eMf/5jGxsZ8/OMfzwsvvFBbM2LEiFx33XW5+uqrc9ddd+XFF1/MkCFDsnTp0la4KgAAAAAAYH1R19oDvJlvfOMb6dmzZ3784x/XjvXq1av252q1mgsvvDBnnnlmhg0bliS59NJL071791x55ZU59thjM3/+/FxyySW5/PLLM3DgwCTJFVdckZ49e+aWW27J4MGD39FrAgAAAAAA1h9r9Y6Y66+/Prvuums+/elPp1u3bvnQhz6UH/zgB7XnZ86cmTlz5mTQoEG1Y+3atUu/fv1y9913J0mmTZuWJUuWNFvT1NSU7bffvrZmRRYtWpQFCxY0ewAAAAAAAKyOtTrEPPnkk7n44ovTu3fv3HjjjfniF7+YE044IZdddlmSZM6cOUmS7t27Nzuve/futefmzJmTtm3bpnPnzitdsyLnnXdeGhoaao+ePXu25KUBAAAAAADrgbU6xCxbtiw777xzxo4dmw996EM59thjc8wxx+Tiiy9utq5SqTT7uVqtLnfsjd5qzciRIzN//vza4+mnn17zCwEAAAAAANZLa3WI6dGjR7bbbrtmx97//vfnqaeeSpI0NjYmyXI7W+bOnVvbJdPY2JjFixdn3rx5K12zIu3atUunTp2aPQAAAAAAAFbHWh1iPvKRj+Sxxx5rdmzGjBnZYostkiRbbrllGhsbc/PNN9eeX7x4ce64447sueeeSZJddtkl9fX1zdbMnj07Dz30UG0NAAAAAABACXWtPcCbOfHEE7Pnnntm7NixOeiggzJ16tR8//vfz/e///0kr92SbMSIERk7dmx69+6d3r17Z+zYsenQoUOGDx+eJGloaMjRRx+dk08+OV27dk2XLl1yyimnZIcddsjAgQNb8/IAAAAAAIB3ubU6xOy222657rrrMnLkyIwZMyZbbrllLrzwwhx22GG1NaeddloWLlyYL33pS5k3b15233333HTTTenYsWNtzfjx41NXV5eDDjooCxcuzIABAzJp0qS0adOmNS4LAAAAAABYT6zVISZJhgwZkiFDhqz0+Uql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rJ1S09faLMuisrIyKioqorS0NI477riYO3dufsLWUk0zPfzww3HiiSdGmzZtIpfLxezZs/OSc2fsaKaNGzfGVVddFT169IjmzZtHRUVFXHDBBfHRRx/lL3At1fRcVVZWxiGHHBLNmzePffbZJwYOHBivv/56fsLW0s7sX7/97W9HLpeLW265Zbflq4uaZho2bNhWX7O+9KUv5SdsLdXmeXr33XdjyJAh0bJlyygrK4svfelLsXDhwt0fdifUNNe29he5XC5+8pOf5CdwLdQ005o1a2LEiBHRoUOHKC0tjUMPPTTuuuuu/IStpZpm+tvf/hbDhg2LioqK2GuvveKkk06K999/Pz9ha6k2r3ULbU9Rm5kKbU9R00yFuqeozXNVaHuKnf3+USHsKWozUyHuKWr7XBXSvqI2MxXinqLQKWJIau3atdGzZ8+444478h2lXkyfPj2GDx8er732WkybNi02bdoUgwYNirVr1+Y72i7p0KFD3HjjjfHmm2/Gm2++Gccff3yceuqpDXpTvTNmzJgRkyZNiiOOOCLfUXbZ4YcfHkuWLKm6zZkzJ9+RdsmKFSvimGOOiSZNmsRTTz0Vf/rTn2LChAnx+c9/Pt/RdsmMGTOqPU/Tpk2LiIgzzjgjz8nq7sc//nH89Kc/jTvuuCPefffduOmmm+InP/lJ3H777fmOtksuueSSmDZtWtx///0xZ86cGDRoUAwcODD++te/5jtardX0tfamm26KiRMnxh133BEzZsyI8vLyOOGEE2L16tW7OWnt1TTT2rVr45hjjokbb7xxNyerux3N9Mknn8SsWbPiuuuui1mzZsXDDz8c7733XgwZMiQPSXdOTc9V165d44477og5c+bEyy+/HAcccEAMGjQo/v73v+/mpLVX2/3ro48+Gq+//npUVFTspmR1V5uZTjrppGpfu373u9/txoQ7r6aZPvzww+jXr18ccsgh8eKLL8Yf//jHuO6666JZs2a7OenOqWmuf3+OlixZEj//+c8jl8vF1772td2ctPZqmmn06NHx9NNPxwMPPBDvvvtujB49Oi699NJ47LHHdnPS2tvRTFmWxWmnnRZ//vOf47HHHou33norOnXqFAMHDmzQrxtr81q30PYUtZmp0PYUNc1UqHuK2jxXhban2JnvHxXKnqK2MxXanqI2cxXavqI2MxXinqLgZbCbRET2yCOP5DtGvVq2bFkWEdn06dPzHaXe7bPPPtnPfvazfMfYZatXr866dOmSTZs2Levfv382cuTIfEeqs+uvvz7r2bNnvmPUq6uuuirr169fvmMkN3LkyOyggw7KtmzZku8odXbyySdnF110UbVjQ4cOzb7xjW/kKdGu++STT7KioqLsiSeeqHa8Z8+e2dixY/OUatd89mvtli1bsvLy8uzGG2+sOvbpp59mLVu2zH7605/mIeHO29H+Yf78+VlEZG+99dZuzbSrarMneuONN7KIyBYsWLB7QtWD2sy1cuXKLCKy5557bveE2kXbm2nx4sXZfvvtl73zzjtZp06dsptvvnm3Z6urbc104YUXZqeeempe8tSHbc101llnFfTXqCyr3efUqaeemh1//PG7J1A92NZMhx9+ePaDH/yg2rEvfOEL2bXXXrsbk9XdZ2eaN29eFhHZO++8U3Vs06ZNWatWrbK77747Dwnr5rOvdRvDnmJHr98LdU9Rm+9JFOKeojZzFdqeYnszFfKeYlszFfqeIsu2PVeh7ytq8zlVaHuKQuSMGNgFK1eujIiIVq1a5TlJ/dm8eXNMnTo11q5dG0cffXS+4+yy4cOHx8knnxwDBw7Md5R68f7770dFRUV07tw5zj777Pjzn/+c70i75PHHH48+ffrEGWecEW3bto1evXrF3Xffne9Y9WrDhg3xwAMPxEUXXRS5XC7fceqsX79+8fvf/z7ee++9iIj44x//GC+//HJ85StfyXOyutu0aVNs3rx5q59iKi0tjZdffjlPqerX/PnzY+nSpTFo0KCqY02bNo3+/fvHq6++msdk1GTlypWRy+UK/gzBf7dhw4aYNGlStGzZMnr27JnvOHW2ZcuWOP/882PMmDFx+OGH5ztOvXnxxRejbdu20bVr1/jWt74Vy5Yty3ekOtuyZUs8+eST0bVr1zjxxBOjbdu2cdRRRxX8ZZI/629/+1s8+eSTcfHFF+c7yi7p169fPP744/HXv/41siyLF154Id5777048cQT8x2tTtavXx8RUW1/UVRUFCUlJQW1v/jsa93GsKdojK/fazNTIe4papqrEPcU25qp0PcU23ueCn1P8dm5GsO+oqbPqcayp2joFDFQR1mWxWWXXRb9+vWL7t275zvOLpszZ07svffe0bRp0/jOd74TjzzySBx22GH5jrVLpk6dGrNmzYrx48fnO0q9OOqoo+K+++6LZ555Ju6+++5YunRp9O3bN5YvX57vaHX25z//Oe66667o0qVLPPPMM/Gd73wnvve978V9992X72j15tFHH42PP/44hg0blu8ou+Sqq66Kc845Jw455JBo0qRJ9OrVK0aNGhXnnHNOvqPVWVlZWRx99NHxP//zP/HRRx/F5s2b44EHHojXX389lixZku949WLp0qUREdGuXbtqx9u1a1d1Hw3Pp59+Gt///vfj3HPPjRYtWuQ7zi574oknYu+9945mzZrFzTffHNOmTYs2bdrkO1ad/fjHP47i4uL43ve+l+8o9Wbw4MHxi1/8Ip5//vmYMGFCzJgxI44//viqbygXmmXLlsWaNWvixhtvjJNOOimeffbZOP3002Po0KExffr0fMerN/fee2+UlZXF0KFD8x1ll9x2221x2GGHRYcOHaKkpCROOumkuPPOO6Nfv375jlYnhxxySHTq1CmuvvrqWLFiRWzYsCFuvPHGWLp0acHsL7b1WrfQ9xSN7fV7RO1mKsQ9xY7mKtQ9xfZmKuQ9xfZmKvQ9xbbmKvR9RW3+r2gse4qGrjjfAaBQjRgxIt5+++2C+qmmHenWrVvMnj07Pv744/jNb34TF154YUyfPr1gy5hFixbFyJEj49lnn22w1+zcWYMHD676c48ePeLoo4+Ogw46KO6999647LLL8pis7rZs2RJ9+vSJcePGRUREr169Yu7cuXHXXXfFBRdckOd09WPy5MkxePDgBn+935o89NBD8cADD8SDDz4Yhx9+eMyePTtGjRoVFRUVceGFF+Y7Xp3df//9cdFFF8V+++0XRUVF8YUvfCHOPffcmDVrVr6j1avPno2VZVlBn6HVmG3cuDHOPvvs2LJlS9x55535jlMvvvzlL8fs2bPjH//4R9x9991x5plnxuuvvx5t27bNd7SdNnPmzLj11ltj1qxZjepz6Kyzzqr6c/fu3aNPnz7RqVOnePLJJwvyBfmWLVsiIuLUU0+N0aNHR0TEkUceGa+++mr89Kc/jf79++czXr35+c9/Huedd17B73Vvu+22eO211+Lxxx+PTp06xR/+8If47ne/G+3bty/Is9qbNGkSv/nNb+Liiy+OVq1aRVFRUQwcOLDaXr6h29Fr3ULdUzS21+8RNc9UqHuKHc1VqHuKbc1U6HuK7T1Phb6n2NZc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HXzwwVmzZs2ynj17Zo8++mj+AtdSbeb6v//7v6y0tLRgvl7VNNOSJUuyYcOGZRUVFVmzZs2ybt26ZRMmTMi2bNmS3+A7UNNMt956a9ahQ4eqz6lrr722we+ZavNat9D2FLWZqdD2FDXNVKh7iprmKsQ9RV2+f9TQ9xQ1zVSoe4raPleFtK+o7UyFtqcodLksy7IAAAAAAACg3vkdMQAAAAAAAIkoYgAAAAAAABJRxAAAAAAAACSiiAEAAAAAAEhEEQMAAAAAAJCIIgYAAAAAACARRQwAAAAAAEAiihgAAAAAAIBEFDEAAEBBGjZsWJx22mk7XHPcccfFqFGjdkue+nTPPffE5z//+XzHAAAA6kFxvgMAAADUxa233hpZluU7RgwbNiw+/vjjePTRR/MdBQAAaIAUMQAAQEFq2bJl8r9j8+bNkcvl4nOfczEBAACgbryaAAAAGrRf//rX0aNHjygtLY3WrVvHwIEDY+3atVtdmmzt2rVxwQUXxN577x3t27ePCRMmbPW+NmzYEFdeeWXst99+0bx58zjqqKPixRdfrLr/X5cEe+KJJ+Kwww6Lpk2bxoIFC7abrbKyMu6999547LHHIpfLRS6Xq3p/V111VXTt2jX22muvOPDAA+O6666LjRs3Vj32j3/8Y3z5y1+OsrKyaNGiRfTu3TvefPPNbf49y5cvj//4j/+IIUOGxKeffhorVqyI8847L/bdd98oLS2NLl26xJQpU3buHxYAANgtnBEDAAA0WEuWLIlzzjknbrrppjj99NNj9erV8dJLL23zkmRjxoyJF154IR555JEoLy+Pa665JmbOnBlHHnlk1ZpvfvOb8Ze//CWmTp0aFRUV8cgjj8RJJ50Uc+bMiS5dukRExCeffBLjx4+Pn/3sZ9G6deto27btdvNdccUV8e6778aqVauqipBWrVpFRERZWVncc889UVFREXPmzIlvfetbUVZWFldeeWVERJx33nnRq1evuOuuu6KoqChmz54dTZo02ervWLx4cQwaNCj69OkTP//5z6O4uDiuuOKK+NOf/hRPPfVUtGnTJj744INYt25dnf+dAQCAdBQxAABAg7VkyZLYtGlTDB06NDp16hQRET169Nhq3Zo1a2Ly5Mlx3333xQknnBAREffee2906NChas2HH34Yv/zlL2Px4sVRUVEREf9/kfL000/HlClTYty4cRERsXHjxrjzzjujZ8+eNebbe++9o7S0NNavXx/l5eXV7rv22mur/nzAAQfE5ZdfHg899FBVEbNw4cIYM2ZMHHLIIRERVUXQv3vvvffihBNOiFNPPTVuvfXWyOVyVY/t1atX9OnTp+r9AwAADZMiBgAAaLB69uwZAwYMiB49esSJJ54YgwYNiq9//euxzz77VFv34YcfxoYNG+Loo4+uOtaqVavo1q1b1duzZs2KLMuia9eu1R67fv36aN26ddXbJSUlccQRR+xy9l//+tdxyy23xAcffBBr1qyJTZs2RYsWLaruv+yyy+KSSy6J+++/PwYOHBhnnHFGHHTQQVX3r1u3Lvr16xfnnHNO3HrrrdXe93/913/F1772tZg1a1YMGjQoTjvttOjbt+8uZwYAAOqf3xEDAAA0WEVFRTFt2rR46qmn4rDDDovbb789unXrFvPnz6+2bluXKvusLVu2RFFRUcycOTNmz55ddXv33XerFR2lpaVVZ57U1WuvvRZnn312DB48OJ544ol46623YuzYsbFhw4aqNZWVlTF37tw4+eST4/nnn4/DDjssHnnkkar7mzZtGgMHDownn3wyFi9eXO39Dx48OBYsWBCjRo2Kjz76KAYMGBBXXHHFLmUGAADSUMQAAAANWi6Xi2OOOSZuuOGGeOutt6KkpKRaYRERcfDBB0eTJk3itddeqzq2YsWKeO+996re7tWrV2zevDmWLVsWBx98cLXbZy8rtjNKSkpi8+bN1Y698sor0alTpxg7dmz06dMnunTpEgsWLNjqsV27do3Ro0fHs88+G0OHDq36PTMREZ/73Ofi/vvvj969e8fxxx8fH330UbXH7rvvvjFs2LB44IEH4pZbbolJkybVeQYAACAdRQwAANBgvf766zFu3Lh48803Y+HChfHwww/H3//+9zj00EOrrdt7773j4osvjjFjxsTvf//7eOedd2LYsGHxuc/9v5c8Xbt2jfPOOy8uuOCCePjhh2P+/PkxY8aM+PGPfxy/+93v6pzxgAMOiLfffjvmzZsX//jHP2Ljxo1x8MEHx8KFC2Pq1Knx4Ycfxm233VatPFq3bl2MGDEiXnzxxViwYEG88sorMWPGjK3mKioqil/84hfRs2fPOP7442Pp0qUREfHf//3f8dhjj8UHH3wQc+fOjSeeeGKrxwIAAA2DIgYAAGiwWrRoEX/4wx/iK1/5SnTt2jWuvfbamDBhQgwePHirtT/5yU/i2GOPjSFDhsTAgQOjX79+0bt372prpkyZEhdccEFcfvnl0a1btxgyZEi8/vrr0bFjxzpn/Na3vhXdunWLPn36xL777huvvPJKnHrqqTF69OgYMWJEHHnkkfHqq6/GddddV/WYoqKiWL58eVxwwQXRtWvXOPPMM2Pw4MFxww03bPX+i4uL45e//GUcfvjhcfzxx8eyZcuipKQkrr766jjiiCPi2GOPjaKiopg6dWqdZwAAANLJZbW5mDIAAAAAAAA7zRkxAAAAAAAAiShiAAAAdmDvvffe7u2ll17KdzwAAKCBc2kyAACAHfjggw+2e99+++0XpaWluzENAABQaBQxAAAAAAAAibg0GQAAAAAAQCKKGAAAAAAAgEQUMQAAAAAAAIkoYgAAAAAAABJRxAAAAAAAACSiiAEAAAAAAEhEEQMAAAAAAJDI/wcjSNc/9OkyMAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 2000x1500 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Importing the matplotlib library\n",
    "import matplotlib.pyplot as plt\n",
    "# Declaring the figure or the plot (y, x) or (width, height)\n",
    "plt.figure(figsize=[20, 15])\n",
    "# Data to be plotted\n",
    "X = np.arange(1,len(sider_tasks)+1)\n",
    "\n",
    "plt.bar(X + 0.20, zero, color = 'g', width = 0.25)\n",
    "plt.bar(X + 0.4, one, color = 'b', width = 0.25)\n",
    "# Creating the legend of the bars in the plot\n",
    "plt.legend(['Active' , 'inactive' ])\n",
    "# Overiding the x axis with the country names\n",
    "plt.xticks([i + 0.25 for i in range(1,28)], X)\n",
    "# Giving the tilte for the plot\n",
    "plt.title(\"Sider dataset diagram\")\n",
    "# Namimg the x and y axis\n",
    "plt.xlabel('sider_tasks')\n",
    "plt.ylabel('Cases')\n",
    "# Saving the plot as a 'png'\n",
    "plt.savefig('4BarPlot.png')\n",
    "# Displaying the bar plot\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true,
    "id": "6grIE_JeqkUZ"
   },
   "source": [
    "# Required functions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "metadata": {
    "hidden": true
   },
   "outputs": [],
   "source": [
    "from dgllife.model import MLPPredictor\n",
    "\n",
    "def create_dataset_with_gcn(dataset, class_embed_vector, GCN, tasks ):\n",
    "    created_data = []\n",
    "    data = np.arange(len(tasks))\n",
    "    onehot_encoded = to_categorical(data)\n",
    "    for i, data in enumerate(dataset):\n",
    "        smiles, g, labels, mask = data\n",
    "        g = g.to(device)\n",
    "        g = dgl.add_self_loop(g)\n",
    "        graph_feats = g.ndata.pop('h')\n",
    "        embbed = GCN(g, graph_feats)\n",
    "        embbed = embbed.to('cpu')\n",
    "        embbed = embbed.detach().numpy()\n",
    "        for j, label in enumerate(labels):\n",
    "            a = (embbed, onehot_encoded[j], class_embed_vector[j], label, tasks[j])\n",
    "            created_data.append(a)\n",
    "    print('Data created!!')\n",
    "    return created_data\n",
    "\n",
    "\n",
    "def create_meta_data_gcn(GCN, data_train, data_test, class_embed_vector, train_task_size, tasks):\n",
    "    \n",
    "    train_data= []\n",
    "    valid_data = []\n",
    "    data = np.arange(len(tasks))\n",
    "    onehot_encoded = to_categorical(data)\n",
    "\n",
    "    for i, onehot in enumerate(onehot_encoded):\n",
    "\n",
    "        if i < train_task_size :\n",
    "            for data in data_train:\n",
    "                smiles, g, labels, mask = data\n",
    "                g = g.to(device)\n",
    "                g = dgl.add_self_loop(g)\n",
    "                graph_feats = g.ndata.pop('h')\n",
    "                embbed = GCN(g, graph_feats)\n",
    "                embbed = embbed.to('cpu')\n",
    "                embbed = embbed.detach().numpy()\n",
    "                a = (smiles, embbed, onehot_encoded[i], class_embed_vector[i], labels[i], tasks[i])\n",
    "                train_data.append(a)\n",
    "                \n",
    "        else:\n",
    "            for data in data_test:\n",
    "                smiles, g, labels, mask = data\n",
    "                g = g.to(device)\n",
    "                g = dgl.add_self_loop(g)\n",
    "                graph_feats = g.ndata.pop('h')\n",
    "                embbed = GCN(g, graph_feats)\n",
    "                embbed = embbed.to('cpu')\n",
    "                embbed = embbed.detach().numpy()\n",
    "                a = (smiles, embbed, onehot_encoded[i], class_embed_vector[i], labels[i], tasks[i])\n",
    "                valid_data.append(a)\n",
    "\n",
    "    print('Data created!!')            \n",
    "    return train_data, valid_data   "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true
   },
   "source": [
    "# Calculation of embedded vectors for each class"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "hidden": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Hepatobiliary disorders=> positive: 743 - negative: 684\n",
      "Metabolism and nutrition disorders=> positive: 996 - negative: 431\n",
      "Product issues=> positive: 22 - negative: 1405\n",
      "Eye disorders=> positive: 876 - negative: 551\n",
      "Investigations=> positive: 1151 - negative: 276\n",
      "Musculoskeletal and connective tissue disorders=> positive: 997 - negative: 430\n",
      "Gastrointestinal disorders=> positive: 1298 - negative: 129\n",
      "Social circumstances=> positive: 251 - negative: 1176\n",
      "Immune system disorders=> positive: 1024 - negative: 403\n",
      "Reproductive system and breast disorders=> positive: 727 - negative: 700\n",
      "Neoplasms benign, malignant and unspecified (incl cysts and polyps)=> positive: 376 - negative: 1051\n",
      "General disorders and administration site conditions=> positive: 1292 - negative: 135\n",
      "Endocrine disorders=> positive: 323 - negative: 1104\n",
      "Surgical and medical procedures=> positive: 213 - negative: 1214\n",
      "Vascular disorders=> positive: 1108 - negative: 319\n",
      "Blood and lymphatic system disorders=> positive: 885 - negative: 542\n",
      "Skin and subcutaneous tissue disorders=> positive: 1318 - negative: 109\n",
      "Congenital, familial and genetic disorders=> positive: 253 - negative: 1174\n",
      "Infections and infestations=> positive: 1006 - negative: 421\n",
      "Respiratory, thoracic and mediastinal disorders=> positive: 1060 - negative: 367\n",
      "Psychiatric disorders=> positive: 1016 - negative: 411\n",
      "Renal and urinary disorders=> positive: 911 - negative: 516\n",
      "Pregnancy, puerperium and perinatal conditions=> positive: 125 - negative: 1302\n",
      "Ear and labyrinth disorders=> positive: 659 - negative: 768\n",
      "Cardiac disorders=> positive: 988 - negative: 439\n",
      "Nervous system disorders=> positive: 1304 - negative: 123\n",
      "Injury, poisoning and procedural complications=> positive: 946 - negative: 481\n"
     ]
    }
   ],
   "source": [
    "df_positive, df_negative = Separate_active_and_inactive_data(df, sider_tasks)\n",
    "\n",
    "for i,d in enumerate(zip(df_positive,df_negative)):\n",
    "    print(f'{sider_tasks[i]}=> positive: {len(d[0])} - negative: {len(d[1])}')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "hidden": true,
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1151\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1298\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1024\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1292\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1108\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1318\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1006\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1060\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1016\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1304\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1405\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1176\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1051\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1104\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1214\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1174\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1302\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n",
      "Processing dgl graphs from scratch...\n"
     ]
    }
   ],
   "source": [
    "dataset_positive = [DATASET(d,smiles_to_bigraph, AttentiveFPAtomFeaturizer(), cache_file_path = cache_path) for d in df_positive]\n",
    "dataset_negative = [DATASET(d,smiles_to_bigraph, AttentiveFPAtomFeaturizer(), cache_file_path = cache_path) for d in df_negative]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {
    "hidden": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "class vector created!!\n"
     ]
    }
   ],
   "source": [
    "embed_class_sider = get_embedding_vector_class(dataset_positive, dataset_negative, radius=2, size = 512)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "XH-609VwgG4W"
   },
   "source": [
    "# Bioactivity class-based strategy (Meta-Learning) with BioAct-Het"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "DQuTm_lmlOOM"
   },
   "source": [
    "## Meta-Learning with BioAct-Het and AttentiveFP GCN \n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true,
    "id": "LIx0yuwm6D42"
   },
   "source": [
    "### Siamea model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "hidden": true,
    "id": "NdINxv80dsQ3",
    "outputId": "daaa9e13-1532-48c4-e47c-e5fb72486020"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Downloading GCN_attentivefp_SIDER_pre_trained.pth from https://data.dgl.ai/dgllife/pre_trained/gcn_attentivefp_sider.pth...\n",
      "Pretrained model loaded\n"
     ]
    }
   ],
   "source": [
    "#  Attentive FP GCN\n",
    "model_name = 'GCN_attentivefp_SIDER'\n",
    "gcn_model = get_sider_model(model_name)\n",
    "gcn_model.eval()\n",
    "gcn_model = gcn_model.to(device)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "hidden": true,
    "id": "HGiScGzpzl0h",
    "outputId": "3e682170-5ae9-4a77-c38f-39a61968107b"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1427\n"
     ]
    }
   ],
   "source": [
    "df_all = DATASET(df,smiles_to_bigraph, AttentiveFPAtomFeaturizer(), cache_file_path = cache_path)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {
    "hidden": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Data created!!\n"
     ]
    }
   ],
   "source": [
    "train_dataset, valid_dataset = create_meta_data_gcn (gcn_model, df_all, df_all, embed_class_sider, 21, sider_tasks)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "hidden": true,
    "id": "hn2k_msYf9Rl",
    "outputId": "095e992a-3e82-4eb6-9b57-4ddcf083b2b2"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "29967-8562\n"
     ]
    }
   ],
   "source": [
    "print(f'{len(train_dataset)}-{len(valid_dataset)}')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {
    "hidden": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "train positive label: 16935 - train negative label: 13032\n",
      "Test positive label: 4933 - Test negative label: 3629\n"
     ]
    }
   ],
   "source": [
    "label_pos , label_neg, _ , _  = count_lablel(train_dataset)\n",
    "print(f'train positive label: {label_pos} - train negative label: {label_neg}')\n",
    "\n",
    "label_pos , label_neg, _ , _ = count_lablel(valid_dataset)\n",
    "print(f'Test positive label: {label_pos} - Test negative label: {label_neg}')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 1000
    },
    "hidden": true,
    "id": "fznYoXwWcM9O",
    "outputId": "f08e2441-45bd-4803-b4c6-e91c901d41bd"
   },
   "outputs": [
    {
     "data": {
      "image/png": "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H/8Yx44dw7lz53Dbbbfh4YcfxltvvWV2aERkgLfffhsHDhzArbfeipMnT2JoaAjHjx/HJz7xCbNDI6IcsA82UZF555138L3vfQ/f+ta38Cd/8if4u7/7O2zbts3ssIgoR5IkYceOHXj11Vfx9a9/HQ8++CDe8573mB0WES0CW7CJisxVV12F7du344UXXsDmzZvx5S9/GY2NjXjuuefMDo2IsjA1NYVNmzbhnnvuwR133IHnn38eDz/8MItrohLAApuoSF1//fX4/ve/j1OnTuEPf/gD7rjjDg7rR1QEYofdi0QieOaZZzA8PIzq6mqzQyMig7DAJipyd955J37605/in/7pnzAyMoKamhocOHAA7777rtmhEVGMS5cu4fHHH0dNTQ0GBgbwne98B6dPn8batWvNDo2IDMYCm6gEJBvWb+XKlfiP//gPs0MjIgDj4+NYvXo1nE4nh90jKgMssIlKyLXXXouHH34Yv/jFL/DRj34Ud999N0RRxK9//WuzQyMqS6+88gq2bduGz372s/izP/szDrtHVCZYYBOVoI997GOQJAnHjh3D+fPncdttt+HBBx/E//7v/5odGlFZeOutt/Doo4/i1ltvxcTEhDbs3sc//nGzQyOiAuAwfUQlLtmwfm1tbRAEwezQiEqSJEnYvn07IpEIPB4PHnroIVxzzTVmh0VEBcQWbKISx2H9iArjhRdewOc//3ncc889uPPOO7Vh91hcE5UfFthEZUId1u/06dN4++238clPfhLbtm3Db3/7W7NDIypqr7/+OrZv346VK1fid7/7HX7yk59geHgYH/rQh8wOjYhMwgKbqMzccccd+MlPfoIf/vCHOHbsmDas38WLF80OjaioxA6798///M/w+Xw4ffo0Pv3pT5sdGhGZjAU2URmKHdbvgQce0Ib1+/d//3ezQyMqCmNjY9qwe62trdqwe1dcwa9VImKBTVTW1GH9fvnLX2LlypX4/Oc/D1EU8dJLL5kdGpElvfzyy9i2bRvWr1+PD3zgA5icnOSwe0SUgAU2EeHmm2/G8PAwjh07hpdeegkf//jHOawfUQx12L0VK1YgFAphZGQEx44dw2233WZ2aERkQRymj4h01GH9uru7cd1112Hv3r0c1o/KmiRJeOCBB/Db3/6Ww+4RUUbYgk1EOuqwfufOncMXv/hFfOUrX8H69esRDofNDo2ooJ5//nlt2L3/9//+H1588UUOu0dEGWGBTURJvf/978eBAwdw6tQpXLx4EatXr8a2bdsQiUTMDo0or2KH3fuf//kf/OQnP8Hjjz+O5cuXmx0aERUJFthEtKA77rgDzzzzDILBIMbGxnDrrbdyWD8qSbHD7h0+fBjf+973cOrUKQ67R0RZY4FNRGkJgoDm5mb86le/wgMPPIAHH3wQK1euxL/927+ZHRqRIf7rv/4Ln/zkJ7Vh91544QV0dHRw2D0iygkzBxFlTB3W7xe/+AVWrlyJTZs2cVg/Kmqxw+5VVFRow+79yZ/8idmhEVERY4FNRFlTh/U7fvw4XnrpJdx6663Yvn073njjDbNDI8rIm2++iYcffhi33HILQqEQfvzjH3PYPSIyDIfpI6JF4bB+VGw47B4R5RtbsIloUZIN61dXV4dTp06ZHRqRzuTkJBoaGrRh986dO8dh94goL1hgE5Eh1GH9Tp8+jauvvhqf/vSnOawfWcJrr72G7du3484778Rbb72Fn/70p3j88cdRWVlpdmhEVKJYYBORoVavXo3x8XFtWL+amho8+uijePvtt80OjcrMxYsX0d/frxt2LxQKob6+3uzQiKjEsQ82EeXNm2++ie985zt49NFHceONN2Lfvn3YtGmT2WFRGfjP//xPbN++HS+88ALcbjd6eno4MggRFQxbsIkob5YuXYqHH34Yv/zlL3H77bdj8+bNEEUR58+fNzs0KlG/+c1vsG3bNjQ2NqKyshLhcJjD7hFRwbHAJqK8++hHP4rh4WGcOHECv/71r7FixQoO60eGih1279SpUzhy5AiOHTuGFStWmB0aEZUhdhEhooK6ePEifvCDH6CzsxPXXHMNvv3tb3NYP1oUSZJw//33Q5ZlPPjgg9i5cyeuvvpqs8MiojLGFmwiKqglS5ago6MD09PTaGpqwle+8hWsWbMGoVDI7NCoyDz77LNYt24d7rnnHqxbtw4vvPACvvnNb7K4JiLTscAmIlMsW7YMBw4cwM9+9jO85z3vwdq1a7Ft2zbMzc0tuJwsyzhy5EiBoqRCO3LkCGRZXnAeddi9T33qU/jDH/6AkydPctg9IrIUFthEZKpPfvKTGB8fx7/+679ifHwct95664LD+u3evRtNTU342c9+VuBIKd9+9rOfoampCbt37076fOywe08++SR+8IMf4NSpU6irqytwpEREC2MfbCKyjNhh/aqrq7Fv3z5s3rxZe/7555/HypUrcenSJSxbtgw///nPUV1dbWLEZJTZ2VmsXr0ar732Gq644gr84he/0F2gODo6iu3bt2N6ehoulwt79uzB+973PhMjJiJKjS3YRGQZ6rB+09PTWLNmDf78z/8coiji3LlzAIAHHngAV1xxBRRFwe9//3ts3LgxbXcCsr433ngDn//85/H73/8eiqLgiiuuwF//9V8DuDzs3oYNG/DhD38Yzz//PA4cOMDimogsjS3YRGRZx44dw44dO3D+/Hls27YN/f39uuevuuoqNDQ04OjRo1iyZIlJUdJivPvuu3A4HDh27Bjeeecd3XNf/epXcejQIXzkIx/B/v378bnPfc6kKImIssMCm4gs7eLFi/iHf/gHfPe730UkEsGlS5d0z1955ZX4y7/8SwwMDJgUIS3G3/zN3+D73/8+3n33Xd30K664Au9///vxjW98Azt27OAPKCIqKuwiQkSWtmTJEvzxj3/Eb3/724TiGphvAf3BD36AAwcOmBAdLcb+/fvxve99L6G4BoBLly7htddew8WLF1lcE1HRYQs2EVnaq6++io9+9KN48803F5xPEAT8y7/8C+65554CRUaLcfToUXzhC19I+qMp1nvf+168+OKLuOGGGwoUGRHR4rEFm4gszePxJPTNTWXr1q149tln8xwRLdazzz6LL37xixnNe/HiRXz961/Pc0RERMZiCzYRWdbExATWrl0LQRCwZMmSlGNjq5YsWaIN31dVVVWgKCkbr7zyijYc38WLFxec9+qrr8bFixehKAp++tOfor6+vkBREhEtDgtsIrKsixcvYmpqCmfOnMGvfvUrhMNhTExMQJZlCIKAq6++Gm+//TZi09hVV12FmpoaTExM4LrrrjMxeor35ptv4jOf+Qx++ctfJpyVUIvpS5cu4b3vfS9WrlyJVatW4bbbbsMdd9yBT33qU7jmmmtMipyIKDsssKmoDA8Pmx0CmUxRFLz66qv49a9/jZdeegkvvvgiXnrpJa2P9hVXXIFLly5h9erV+PrXv44rrmBPOCu4dOkSvvvd7+LnP/+59h4B832sb7rpJnzsYx/DTTfdhA9/+MNYvnw5BEEwOWIy25YtW8wOgShnLLCpqPBLl4ioPLA8oWLGph0qOkNDQ1AUhQ8+0j4ikQje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HyqCIMBut2t/2+123djl3d3dKfvr19TUaP9vbGzEiRMnMDY2BkEQcOjQIZw4cUL7IadSX4f6uojIOgSFg6VSEREEAUNDQ9iyZYvZoVARGx4eRktLi2XGilaLMKvEoyrF401t2d+1a1fWyzocDt142Wbr6uqC3W7P6bVYmdWOT6JcsAWbiIjKhtPpxNjYmK6LTSZCoRA6OzvzFFX2wuEwwuEwnE6n2aEQURIssImITBQ7KglveZ1/alefvXv3ZtSnGpgfG3vZsmUFGWEkE9PT0+jr68PAwEDSMbSJyHwssImITKQOwRb/f8qfiooKBAIBHD9+PKP5GxsbtQskrUCSJOzevTvpHT6JyBqWmB0AEVE5Yz9Tc9hstqLtu1yscROVE7ZgExEREREZiAU2EREREZGBWGATERERERmIBTYRERERkYFYYBMRERERGYh3cqSiEnvbYSIiKl0sT6iYcZg+KipDQ0Nmh0BUUPv27QMA7Ny50+RIiIgoU2zBJiKysC1btgAAhoeHTY6EiIgyxT7YREREREQGYoFNRERERGQgFthERERERAZigU1EREREZCAW2EREREREBmKBTURERERkIBbYREREREQGYoFNRERERGQgFthERERERAZigU1EREREZCAW2EREREREBmKBTURERERkIBbYREREREQGYoFNRERERGQgFthERERERAZigU1EREREZCAW2EREREREBmKBTURERERkIBbYREREREQGYoFNRERERGQgFthERERE/5+9O45t6r73//86LXQbd3fOui5hN22opopc7u6USpVKuNWKCFxVMB1P2xIgXDzuJiey/6hER/5Yo0SIGbFdKd6QWokIW5v6jUScwD/N0dp/ILrJHxdTqVO8e6utkYoIo2hx0a69alfTWHt+f/A7BzuxE9s5ju3k+ZAskuNzPufjEwde/vA+nw/gIQI2AAAA4CECNgAAAOAhAjYAAADgIQI2AAAA4CECNgAAAOAhAjYAAADgIQI2AAAA4CECNgAAAOAhAjYAAADgIQI2AAAA4CECNgAAAOChLbXuAADggXv37ulPf/pT3rY///nPkqSbN2/mbf/CF76gJ554Yt36BgAonWHbtl3rTgAApF/+8pf6wQ9+UNK+v/jFL/T973+/yj0CAFSCgA0AdSKbzerLX/6y7t+/v+J+W7du1UcffSSfz7dOPQMAlIMabACoEz6fT4cOHdKWLcWr97Zs2aJvfvObhGsAqGMEbACoI8ePH9cnn3xS9PlPP/1Ux48fX8ceAQDKRYkIANSRv/zlL3riiSfcmxuX2rZtm+7du6fPfe5z69wzAECpGMEGgDry2c9+Vt/5zne0devWZc9t3bpV3d3dhGsAqHMEbACoM8eOHSt4o+P9+/d17NixGvQIAFAOSkQAoM787W9/U0tLi/74xz/mbW9qatJHH3204k2QAIDaYwQbAOrMli1b1Nvbm1cmsnXrVh0/fpxwDQANgIANAHWot7c3r0zk/v376u3trWGPAAClokQEAOqQbdt66qmn9OGHH0qSvvKVr+jDDz+UYRg17hkAYDWMYANAHTIMQ4FAQI899pgee+wxnThxgnANAA2CEWwAqFO/+c1v1NHR4X799a9/vcY9AgCUgrtlgBL09PTUugvYpD7/+c9Lkn784x/XuCfYrC5fvlzrLgANhxIRoARXrlzRnTt3at0NbEI7duzQ008/XfC5O3fu6MqVK+vboQbE729leH8BlaNEBCiBYRiamJjQ4cOHa90VbDI3b96UJH31q19d9tzk5KSOHDki/hpfGb+/leH9BVSOEhEAqGOFgjUAoL5RIgIAAAB4iIANAAAAeIiADQAAAHiIgA0AAAB4iIANAJvc8PCwhoeHa92NupROpxWNRmvdjYpEo1Fls9ladwPYlAjYAICaymazdbkMfDqd1unTp2WaprstkUjI7/fLMAyFw2Gl0+my281ms0omk4rFYvL7/QX3uX37tsLhsHue6enpgvtZluX2x+/3K5FIuM8dOHBAgUCgoj4CWBsCNgBscpFIRJFIpGbnn52drdm5i8lmswoGgzpx4oR27twpSYrFYmpubtbU1JRs29bevXsVDAaVSqXKantkZES/+tWv1N/fL8uyCp47lUrpwoULymQy2rt3r/bv379s32g0Kr/fr0gkItu2FYlE1Nvb6464d3R0aHBwUMFgkJFsYJ0RsAEANZPNZhWLxWrdjWXi8bg6OjrU2dnpbuvv788bDT569Kgsyyq7vGa1DzSzs7PuqLnP59PRo0cladlo98DAgKQHQTr3z5mZGXefzs5Otba2Kh6Pl9VHAGtDwAaATSydTrtlD8W2WZblliDcvn3b3ccpT5AejO465Qzz8/OSHqyg6DwcS7eNjIy4I7O522tZF55O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XwzUlPNf9k7lB6BQo70+nLDeSP9UTE1Nqbe3d9NjcmbOz507t+lzBoPBonrZW2loaEh+v7+qcTba6wfYqZjBBgDsCOFwWLOzs0VLWCqRTqc1ODi4RaMqlslklMlkFA6Ha3I+AFuDgA0AKKuwKsl22LbbWUpz6dKldddUF5qZmdETTzxRk5J6CwsLGh0d1fj4eNn62ACaBwEbAFBWa2tr2c+bWUtLi5LJpG7evFnR8V1dXWuW3POaZVm6cOFC2d0xATSX3fUeAACgMTXSumsv+Xy+qtY3b7VGHBOA6jCDDQAAAHiIgA0AAAB4iIANAAAAeIiADQAAAHiImxyBOvj44481NTVV72GgAX388ceSxOtjHbdv35bENSrn448/1te+9rV6DwPY8djJEaixnp4evf322/UeBoBtqru7m50cgTojYANAAztx4oQkZmsBoJmwBhsAAADwEAEbAAAA8BABGwAAAPAQARsAAADwEAEbAAAA8BABGwAAAPAQARsAAADwEAEbAAAA8BABGwAAAPAQARsAAADwEAEbAAAA8BABGwAAAPAQARsAAADwEAEbAAAA8BABGwAAAPAQARsAAADwEAEbAAAA8BABGwAAAPAQARsAAADwEAEbAAAA8BABGwAAAPAQARsAAADwEAEbAAAA8BABGwAAAPAQARsAAADwEAEbAAAA8BABGwAAAPAQARsAAADwEAEbAAAA8BABGwAAAPAQARsAAADwEAEbAAAA8BABGwAAAPDQ7noPAADwwNzcnG7fvl3U9v7770uSfvzjHxe1Hzp0SC+++GLNxgYAqJxh27Zd70EAAKRbt27p6NGj2rNnj3btKv8fjF988YXu37+vmzdv6siRIzUeIQCgEgRsAGgQX3zxhZ566il9+umn6x735JNP6re//a0ee+yxGo0MALAZrMEGgAaxa9cuff/739fjjz++5jGPP/64XnvtNcI1ADQwAjYANJC+vj59/vnnaz7++eefq6+vr4YjAgBsFktEAKDBPP3001paWir72L59+7S0tCTDMGo8KgBApZjBBoAGEwqFtGfPnpL2PXv26Ac/+AHhGgAaHDPYANBg3n//fR04cKDsY7/+9a/13HPP1XhEAIDNYAYbABrM17/+dT333HMlM9Xf+MY3CNcA0AQI2ADQgF5//fWiSiF79uzR6dOn6zgiAEClWCICAA3oo48+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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "siamese_net = siamese_model_attentiveFp_sider()\n",
    "\n",
    "plot_model(siamese_net, show_shapes=True, show_layer_names=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true,
    "id": "ZUo6iyu_Hwk4"
   },
   "source": [
    "### Training algorithm"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {
    "colab": {
     "background_save": true,
     "base_uri": "https://localhost:8080/"
    },
    "hidden": true,
    "id": "UvKopfaM1yAP",
    "outputId": "b05614c9-0f35-49c8-f53a-142198d775db",
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.5419 - accuracy: 0.7369 - mae: 0.3566 - mse: 0.1795 - auc: 0.7990\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.4691 - accuracy: 0.7897 - mae: 0.3043 - mse: 0.1514 - auc: 0.8567\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.4478 - accuracy: 0.8007 - mae: 0.2884 - mse: 0.1432 - auc: 0.8719\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.4295 - accuracy: 0.8037 - mae: 0.2769 - mse: 0.1376 - auc: 0.8821\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.4162 - accuracy: 0.8105 - mae: 0.2677 - mse: 0.1331 - auc: 0.8899\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.4120 - accuracy: 0.8152 - mae: 0.2653 - mse: 0.1311 - auc: 0.8929\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.4057 - accuracy: 0.8156 - mae: 0.2609 - mse: 0.1295 - auc: 0.8955\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3969 - accuracy: 0.8186 - mae: 0.2558 - mse: 0.1271 - auc: 0.8997\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3939 - accuracy: 0.8202 - mae: 0.2535 - mse: 0.1259 - auc: 0.9015\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3920 - accuracy: 0.8216 - mae: 0.2521 - mse: 0.1255 - auc: 0.9022\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3885 - accuracy: 0.8207 - mae: 0.2495 - mse: 0.1242 - auc: 0.9041\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3842 - accuracy: 0.8265 - mae: 0.2474 - mse: 0.1225 - auc: 0.9067\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3827 - accuracy: 0.8267 - mae: 0.2452 - mse: 0.1218 - auc: 0.9076\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3787 - accuracy: 0.8281 - mae: 0.2426 - mse: 0.1207 - auc: 0.9092\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3769 - accuracy: 0.8255 - mae: 0.2420 - mse: 0.1201 - auc: 0.9102\n",
      "82\n",
      "82\n",
      "82\n",
      "82\n",
      "82\n",
      "82\n",
      "81\n",
      "81\n",
      "81\n",
      "81\n",
      "80\n",
      "80\n",
      "78\n",
      "73\n",
      "Epoch 1/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3736 - accuracy: 0.8312 - mae: 0.2393 - mse: 0.1189 - auc: 0.9117\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3718 - accuracy: 0.8308 - mae: 0.2383 - mse: 0.1181 - auc: 0.9128\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3677 - accuracy: 0.8352 - mae: 0.2354 - mse: 0.1165 - auc: 0.9150\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3645 - accuracy: 0.8331 - mae: 0.2336 - mse: 0.1158 - auc: 0.9163\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3614 - accuracy: 0.8369 - mae: 0.2307 - mse: 0.1144 - auc: 0.9181\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3572 - accuracy: 0.8409 - mae: 0.2282 - mse: 0.1132 - auc: 0.9195\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3582 - accuracy: 0.8373 - mae: 0.2285 - mse: 0.1139 - auc: 0.9188\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3565 - accuracy: 0.8382 - mae: 0.2281 - mse: 0.1130 - auc: 0.9201\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3523 - accuracy: 0.8398 - mae: 0.2247 - mse: 0.1119 - auc: 0.9218\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3485 - accuracy: 0.8423 - mae: 0.2219 - mse: 0.1104 - auc: 0.9236\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3485 - accuracy: 0.8405 - mae: 0.2231 - mse: 0.1107 - auc: 0.9235\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3453 - accuracy: 0.8419 - mae: 0.2219 - mse: 0.1100 - auc: 0.9246\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3433 - accuracy: 0.8407 - mae: 0.2192 - mse: 0.1093 - auc: 0.9257\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3389 - accuracy: 0.8466 - mae: 0.2167 - mse: 0.1078 - auc: 0.9273\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3420 - accuracy: 0.8460 - mae: 0.2181 - mse: 0.1082 - auc: 0.9266\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "83\n",
      "83\n",
      "83\n",
      "84\n",
      "83\n",
      "83\n",
      "83\n",
      "83\n",
      "83\n",
      "Epoch 1/15\n",
      "235/235 [==============================] - 4s 15ms/step - loss: 0.3350 - accuracy: 0.8485 - mae: 0.2138 - mse: 0.1063 - auc: 0.9292\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 3s 15ms/step - loss: 0.3357 - accuracy: 0.8490 - mae: 0.2139 - mse: 0.1064 - auc: 0.9289\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 3s 14ms/step - loss: 0.3355 - accuracy: 0.8497 - mae: 0.2145 - mse: 0.1064 - auc: 0.9290\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3327 - accuracy: 0.8483 - mae: 0.2129 - mse: 0.1059 - auc: 0.9300\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3341 - accuracy: 0.8483 - mae: 0.2130 - mse: 0.1060 - auc: 0.9298\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3279 - accuracy: 0.8487 - mae: 0.2095 - mse: 0.1044 - auc: 0.9321\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3289 - accuracy: 0.8483 - mae: 0.2102 - mse: 0.1047 - auc: 0.9316\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3246 - accuracy: 0.8536 - mae: 0.2072 - mse: 0.1029 - auc: 0.9335\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3256 - accuracy: 0.8531 - mae: 0.2080 - mse: 0.1034 - auc: 0.9331\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3238 - accuracy: 0.8514 - mae: 0.2066 - mse: 0.1032 - auc: 0.9336\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3256 - accuracy: 0.8502 - mae: 0.2090 - mse: 0.1035 - auc: 0.9332\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3241 - accuracy: 0.8498 - mae: 0.2078 - mse: 0.1033 - auc: 0.9336\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3210 - accuracy: 0.8504 - mae: 0.2054 - mse: 0.1023 - auc: 0.9349\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3184 - accuracy: 0.8534 - mae: 0.2037 - mse: 0.1016 - auc: 0.9356\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3192 - accuracy: 0.8540 - mae: 0.2050 - mse: 0.1016 - auc: 0.9356\n",
      "85\n",
      "85\n",
      "84\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "Epoch 1/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3172 - accuracy: 0.8534 - mae: 0.2034 - mse: 0.1013 - auc: 0.9360\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3138 - accuracy: 0.8544 - mae: 0.2010 - mse: 0.1002 - auc: 0.9374\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3130 - accuracy: 0.8563 - mae: 0.2007 - mse: 0.0995 - auc: 0.9381\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3134 - accuracy: 0.8563 - mae: 0.2010 - mse: 0.0995 - auc: 0.9380\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3104 - accuracy: 0.8550 - mae: 0.1985 - mse: 0.0991 - auc: 0.9388\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3067 - accuracy: 0.8584 - mae: 0.1969 - mse: 0.0976 - auc: 0.9405\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3087 - accuracy: 0.8557 - mae: 0.1975 - mse: 0.0985 - auc: 0.9396\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3081 - accuracy: 0.8576 - mae: 0.1965 - mse: 0.0977 - auc: 0.9403\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3063 - accuracy: 0.8565 - mae: 0.1963 - mse: 0.0978 - auc: 0.9404\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3029 - accuracy: 0.8596 - mae: 0.1939 - mse: 0.0968 - auc: 0.9417\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3048 - accuracy: 0.8571 - mae: 0.1946 - mse: 0.0971 - auc: 0.9411\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.3041 - accuracy: 0.8606 - mae: 0.1950 - mse: 0.0965 - auc: 0.9419\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.3014 - accuracy: 0.8605 - mae: 0.1927 - mse: 0.0960 - auc: 0.9423\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.3016 - accuracy: 0.8615 - mae: 0.1918 - mse: 0.0959 - auc: 0.9426\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.3011 - accuracy: 0.8613 - mae: 0.1927 - mse: 0.0957 - auc: 0.9428\n",
      "86\n",
      "86\n",
      "86\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "Epoch 1/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2980 - accuracy: 0.8630 - mae: 0.1911 - mse: 0.0948 - auc: 0.9438\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2970 - accuracy: 0.8632 - mae: 0.1893 - mse: 0.0945 - auc: 0.9441\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2940 - accuracy: 0.8652 - mae: 0.1875 - mse: 0.0935 - auc: 0.9454\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2959 - accuracy: 0.8648 - mae: 0.1891 - mse: 0.0940 - auc: 0.9447\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2904 - accuracy: 0.8658 - mae: 0.1865 - mse: 0.0926 - auc: 0.9464\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2880 - accuracy: 0.8662 - mae: 0.1845 - mse: 0.0922 - auc: 0.9469\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2886 - accuracy: 0.8675 - mae: 0.1844 - mse: 0.0919 - auc: 0.9471\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2869 - accuracy: 0.8675 - mae: 0.1835 - mse: 0.0913 - auc: 0.9480\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2876 - accuracy: 0.8692 - mae: 0.1833 - mse: 0.0912 - auc: 0.9477\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2845 - accuracy: 0.8672 - mae: 0.1820 - mse: 0.0907 - auc: 0.9486\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2866 - accuracy: 0.8693 - mae: 0.1827 - mse: 0.0910 - auc: 0.9480\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2835 - accuracy: 0.8687 - mae: 0.1817 - mse: 0.0902 - auc: 0.9491\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2803 - accuracy: 0.8698 - mae: 0.1790 - mse: 0.0893 - auc: 0.9502\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2847 - accuracy: 0.8699 - mae: 0.1810 - mse: 0.0904 - auc: 0.9487\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2786 - accuracy: 0.8703 - mae: 0.1790 - mse: 0.0888 - auc: 0.9506\n",
      "86\n",
      "86\n",
      "86\n",
      "86\n",
      "86\n",
      "86\n",
      "86\n",
      "86\n",
      "86\n",
      "86\n",
      "86\n",
      "86\n",
      "86\n",
      "86\n",
      "Epoch 1/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2809 - accuracy: 0.8675 - mae: 0.1795 - mse: 0.0896 - auc: 0.9499\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2781 - accuracy: 0.8705 - mae: 0.1780 - mse: 0.0887 - auc: 0.9509\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2756 - accuracy: 0.8716 - mae: 0.1762 - mse: 0.0879 - auc: 0.9518\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2789 - accuracy: 0.8721 - mae: 0.1790 - mse: 0.0885 - auc: 0.9509\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2762 - accuracy: 0.8725 - mae: 0.1770 - mse: 0.0880 - auc: 0.9515\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2708 - accuracy: 0.8744 - mae: 0.1739 - mse: 0.0864 - auc: 0.9533\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2729 - accuracy: 0.8762 - mae: 0.1737 - mse: 0.0862 - auc: 0.9531\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2703 - accuracy: 0.8741 - mae: 0.1739 - mse: 0.0860 - auc: 0.9537\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2721 - accuracy: 0.8741 - mae: 0.1742 - mse: 0.0866 - auc: 0.9530\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2669 - accuracy: 0.8750 - mae: 0.1713 - mse: 0.0853 - auc: 0.9546\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2642 - accuracy: 0.8773 - mae: 0.1688 - mse: 0.0844 - auc: 0.9555\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2634 - accuracy: 0.8774 - mae: 0.1693 - mse: 0.0840 - auc: 0.9559\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2658 - accuracy: 0.8777 - mae: 0.1696 - mse: 0.0846 - auc: 0.9551\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2615 - accuracy: 0.8786 - mae: 0.1671 - mse: 0.0832 - auc: 0.9566\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2611 - accuracy: 0.8792 - mae: 0.1673 - mse: 0.0832 - auc: 0.9567\n",
      "87\n",
      "87\n",
      "87\n",
      "87\n",
      "87\n",
      "87\n",
      "87\n",
      "87\n",
      "87\n",
      "87\n",
      "87\n",
      "87\n",
      "87\n",
      "86\n",
      "Epoch 1/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2634 - accuracy: 0.8782 - mae: 0.1685 - mse: 0.0838 - auc: 0.9559\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2584 - accuracy: 0.8804 - mae: 0.1636 - mse: 0.0819 - auc: 0.9578\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2590 - accuracy: 0.8804 - mae: 0.1656 - mse: 0.0825 - auc: 0.9572\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2590 - accuracy: 0.8790 - mae: 0.1662 - mse: 0.0824 - auc: 0.9573\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2588 - accuracy: 0.8811 - mae: 0.1649 - mse: 0.0817 - auc: 0.9578\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2576 - accuracy: 0.8820 - mae: 0.1639 - mse: 0.0816 - auc: 0.9580\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2550 - accuracy: 0.8822 - mae: 0.1623 - mse: 0.0810 - auc: 0.9588\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2551 - accuracy: 0.8832 - mae: 0.1630 - mse: 0.0810 - auc: 0.9587\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2551 - accuracy: 0.8819 - mae: 0.1623 - mse: 0.0810 - auc: 0.9587\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2563 - accuracy: 0.8800 - mae: 0.1636 - mse: 0.0817 - auc: 0.9582\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2514 - accuracy: 0.8824 - mae: 0.1607 - mse: 0.0804 - auc: 0.9596\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2484 - accuracy: 0.8838 - mae: 0.1592 - mse: 0.0788 - auc: 0.9610\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2519 - accuracy: 0.8830 - mae: 0.1612 - mse: 0.0804 - auc: 0.9595\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2497 - accuracy: 0.8853 - mae: 0.1592 - mse: 0.0790 - auc: 0.9607\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2466 - accuracy: 0.8848 - mae: 0.1573 - mse: 0.0781 - auc: 0.9617\n",
      "88\n",
      "88\n",
      "88\n",
      "88\n",
      "88\n",
      "88\n",
      "88\n",
      "88\n",
      "88\n",
      "88\n",
      "87\n",
      "88\n",
      "88\n",
      "87\n",
      "Epoch 1/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2484 - accuracy: 0.8857 - mae: 0.1585 - mse: 0.0788 - auc: 0.9610\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2461 - accuracy: 0.8877 - mae: 0.1569 - mse: 0.0778 - auc: 0.9617\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2427 - accuracy: 0.8879 - mae: 0.1544 - mse: 0.0771 - auc: 0.9628\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2472 - accuracy: 0.8881 - mae: 0.1571 - mse: 0.0782 - auc: 0.9615\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2461 - accuracy: 0.8870 - mae: 0.1558 - mse: 0.0777 - auc: 0.9619\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2438 - accuracy: 0.8884 - mae: 0.1550 - mse: 0.0769 - auc: 0.9625\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2434 - accuracy: 0.8874 - mae: 0.1537 - mse: 0.0771 - auc: 0.9624\n",
      "Epoch 8/15\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2404 - accuracy: 0.8886 - mae: 0.1534 - mse: 0.0762 - auc: 0.9633\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2397 - accuracy: 0.8907 - mae: 0.1525 - mse: 0.0756 - auc: 0.9638\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2378 - accuracy: 0.8905 - mae: 0.1515 - mse: 0.0754 - auc: 0.9642\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2370 - accuracy: 0.8915 - mae: 0.1505 - mse: 0.0748 - auc: 0.9646\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2373 - accuracy: 0.8901 - mae: 0.1510 - mse: 0.0752 - auc: 0.9643\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2374 - accuracy: 0.8888 - mae: 0.1513 - mse: 0.0751 - auc: 0.9643\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2328 - accuracy: 0.8922 - mae: 0.1480 - mse: 0.0737 - auc: 0.9655\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2309 - accuracy: 0.8943 - mae: 0.1465 - mse: 0.0730 - auc: 0.9662\n",
      "89\n",
      "88\n",
      "89\n",
      "89\n",
      "89\n",
      "89\n",
      "88\n",
      "88\n",
      "88\n",
      "88\n",
      "88\n",
      "88\n",
      "88\n",
      "88\n",
      "Epoch 1/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2327 - accuracy: 0.8912 - mae: 0.1482 - mse: 0.0740 - auc: 0.9654\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2364 - accuracy: 0.8912 - mae: 0.1504 - mse: 0.0747 - auc: 0.9647\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2298 - accuracy: 0.8943 - mae: 0.1455 - mse: 0.0723 - auc: 0.9667\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2300 - accuracy: 0.8943 - mae: 0.1468 - mse: 0.0726 - auc: 0.9666\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2329 - accuracy: 0.8939 - mae: 0.1473 - mse: 0.0733 - auc: 0.9659\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2263 - accuracy: 0.8976 - mae: 0.1440 - mse: 0.0713 - auc: 0.9678\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2284 - accuracy: 0.8918 - mae: 0.1458 - mse: 0.0728 - auc: 0.9668\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2310 - accuracy: 0.8929 - mae: 0.1475 - mse: 0.0732 - auc: 0.9659\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 3s 13ms/step - loss: 0.2305 - accuracy: 0.8943 - mae: 0.1466 - mse: 0.0728 - auc: 0.9665\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2296 - accuracy: 0.8948 - mae: 0.1456 - mse: 0.0725 - auc: 0.9666\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2232 - accuracy: 0.8976 - mae: 0.1420 - mse: 0.0705 - auc: 0.9685\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2231 - accuracy: 0.8995 - mae: 0.1410 - mse: 0.0704 - auc: 0.9685\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2230 - accuracy: 0.8984 - mae: 0.1415 - mse: 0.0704 - auc: 0.9685\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2213 - accuracy: 0.8970 - mae: 0.1405 - mse: 0.0701 - auc: 0.9689\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 3s 12ms/step - loss: 0.2226 - accuracy: 0.8970 - mae: 0.1420 - mse: 0.0707 - auc: 0.9685\n",
      "89\n",
      "89\n",
      "89\n",
      "89\n",
      "89\n",
      "89\n",
      "89\n",
      "89\n",
      "89\n",
      "89\n",
      "89\n",
      "89\n",
      "89\n",
      "89\n",
      "9\n"
     ]
    }
   ],
   "source": [
    "# models = [siamese_net for task in sider_tasks_final]\n",
    "Epoch_S = 15\n",
    "l = []\n",
    "r = []\n",
    "lbls = []\n",
    "for i , data in enumerate(train_dataset):\n",
    "    smiles, embbed_drug, onehot_task, embbed_task, lbl, task_name = data\n",
    "    l.append(embbed_drug[0])\n",
    "    r.append(embbed_task)\n",
    "    lbls.append(lbl.tolist())\n",
    "\n",
    "l = np.array(l).reshape(-1,1024,1)\n",
    "r = np.array(r).reshape(-1,512,1)\n",
    "lbls=np.array(lbls)\n",
    "\n",
    "history = History()\n",
    "\n",
    "P = siamese_net.fit([l, r], lbls, epochs = Epoch_S, shuffle=True, batch_size=128, callbacks=[history])\n",
    "\n",
    "for j in range(1000):\n",
    "    C=1\n",
    "    Before = int(P.history['accuracy'][-1]*100)\n",
    "    for i in range(2,Epoch_S+1):\n",
    "        if  int(P.history['accuracy'][-i]*100)== Before:\n",
    "            C=C+1\n",
    "        else:\n",
    "            C=1\n",
    "        Before=int(P.history['accuracy'][-i]*100)\n",
    "        print(Before)\n",
    "    if C==Epoch_S:\n",
    "        break\n",
    "    P = siamese_net.fit([l, r], lbls, epochs = Epoch_S, shuffle=True, batch_size=128, callbacks=history)\n",
    "print(j+1)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true,
    "id": "2c_4DEdVIBw4"
   },
   "source": [
    "### Model evaluation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {
    "colab": {
     "background_save": true
    },
    "hidden": true,
    "id": "b-WGsaHvlL8Q"
   },
   "outputs": [],
   "source": [
    "valid_ds = {}\n",
    "\n",
    "for i, task in enumerate(sider_tasks_test):\n",
    "    temp = []\n",
    "    for j , data in enumerate(valid_dataset):\n",
    "        smiles, embbed_drug, onehot_task, embbed_task, lbl, task_name = data\n",
    "        if task ==  task_name:\n",
    "            temp.append(data)\n",
    "    \n",
    "    valid_ds[task] = temp\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {
    "hidden": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Renal and urinary disorders : \n",
      "45/45 [==============================] - 0s 2ms/step - loss: 0.5114 - accuracy: 0.7582 - mae: 0.2850 - mse: 0.1583 - auc: 0.8406\n",
      "Pregnancy, puerperium and perinatal conditions : \n",
      "45/45 [==============================] - 0s 2ms/step - loss: 0.3610 - accuracy: 0.8612 - mae: 0.2382 - mse: 0.1064 - auc: 0.8012\n",
      "Ear and labyrinth disorders : \n",
      "45/45 [==============================] - 0s 2ms/step - loss: 0.6350 - accuracy: 0.7330 - mae: 0.3024 - mse: 0.1913 - auc: 0.8266\n",
      "Cardiac disorders : \n",
      "45/45 [==============================] - 0s 2ms/step - loss: 0.4054 - accuracy: 0.8129 - mae: 0.2447 - mse: 0.1263 - auc: 0.8789\n",
      "Nervous system disorders : \n",
      "45/45 [==============================] - 0s 2ms/step - loss: 0.1996 - accuracy: 0.9215 - mae: 0.1311 - mse: 0.0599 - auc: 0.9079\n",
      "Injury, poisoning and procedural complications : \n",
      "45/45 [==============================] - 0s 2ms/step - loss: 0.5308 - accuracy: 0.7428 - mae: 0.2977 - mse: 0.1654 - auc: 0.8160\n"
     ]
    }
   ],
   "source": [
    "task_scores = [sider_tasks_test for sider_tasks_test in range(len(sider_tasks_test))]\n",
    "\n",
    "for i, task in enumerate(sider_tasks_test):\n",
    "    print(task,\": \")\n",
    "\n",
    "    y_test = []\n",
    "    l_val = []\n",
    "    r_val = []\n",
    "    lbls_valid = []\n",
    "    for data in valid_ds[task]:\n",
    "       \n",
    "        smiles, embbed_drug, onehot_task, embbed_task, lbl, task_name = data\n",
    "        l_val.append(embbed_drug[0])\n",
    "        r_val.append(embbed_task)\n",
    "        lbls_valid.append(lbl)\n",
    "            \n",
    "    l1 = np.array(l_val)\n",
    "    r1 = np.array(r_val)\n",
    "    lbls_valid = np.array(lbls_valid)\n",
    "\n",
    "    score = siamese_net.evaluate([l1,r1],lbls_valid)\n",
    " \n",
    "    result =(score[1], score[4])\n",
    "    task_scores[i] = task,result"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "hidden": true,
    "id": "4g_Md19NjLDW"
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "LB42ZdTCyR-N"
   },
   "source": [
    "## Meta-Learning with BioAct-Het and Canonical GCN"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true,
    "id": "KcaEHmQMcFau"
   },
   "source": [
    "### Siamea model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "hidden": true,
    "id": "L5XghvH4kJPg",
    "outputId": "db7583fe-3f20-4785-ec80-a1bdd0cd37e9"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Downloading GCN_canonical_SIDER_pre_trained.pth from https://data.dgl.ai/dgllife/pre_trained/gcn_canonical_sider.pth...\n",
      "Pretrained model loaded\n"
     ]
    }
   ],
   "source": [
    "# Canonical GCN\n",
    "model_name = 'GCN_canonical_SIDER'\n",
    "gcn_model = get_model(model_name)\n",
    "gcn_model.eval()\n",
    "gcn_model = gcn_model.to(device)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "hidden": true,
    "id": "mLl7duy7x3n2",
    "outputId": "7117e290-edd9-4513-a68c-691eba07a451"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Processing dgl graphs from scratch...\n",
      "Processing molecule 1000/1427\n"
     ]
    }
   ],
   "source": [
    "df_all = DATASET(df,smiles_to_bigraph, CanonicalAtomFeaturizer(), cache_file_path = cache_path)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {
    "hidden": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Data created!!\n"
     ]
    }
   ],
   "source": [
    "train_dataset, valid_dataset = create_meta_data_gcn (gcn_model, df_all, df_all, embed_class_sider, 21, sider_tasks)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "hidden": true,
    "id": "XSoG4s6VyygH",
    "outputId": "727171d7-b45a-4431-f853-945fb7e6c29a"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "29967-8562\n"
     ]
    }
   ],
   "source": [
    "print(f'{len(train_dataset)}-{len(valid_dataset)}')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {
    "hidden": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "train positive label: 16935 - train negative label: 13032\n",
      "Test positive label: 4933 - Test negative label: 3629\n"
     ]
    }
   ],
   "source": [
    "label_pos , label_neg, _ , _  = count_lablel(train_dataset)\n",
    "print(f'train positive label: {label_pos} - train negative label: {label_neg}')\n",
    "\n",
    "label_pos , label_neg, _ , _ = count_lablel(valid_dataset)\n",
    "print(f'Test positive label: {label_pos} - Test negative label: {label_neg}')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 1000
    },
    "hidden": true,
    "id": "RfwTLe_8yfrd",
    "outputId": "98d8ff33-0045-4ccf-dbd9-72b1dd46a669"
   },
   "outputs": [
    {
     "data": {
      "image/png": "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ExERERHpiAU4EREREZGOWIATEREREemIBTgRERERkY5YgBMRERER6YgFOBERERGRjliAExERERHpiAU4EREREZGOWIATEREREemIBTgRERERkY5YgBMRERER6YgFOBERERGRjliAExERERHpiAU4EREREZGOWIATEREREemIBTgRERERkY5YgBMRERER6YgFOBERERGRjliAExERERHpiAU4EREREZGOWIATEREREemIBTgRERERkY5YgBMRERER6YgFOBERERGRjliAExERERHpiAU4EREREZGOWIATEREREemIBTgRERERkY5YgBMRERER6YgFOBERERGRjliAExERERHpaIXRARBly+v14ve//33C9GeeeQa//OUvY6Z95StfQVlZmV6hERFRFkKhEL7//e/HTDtx4gQA4NFHH42Zvnr1arS3t+sWG1EuSUIIYXQQRNlwOBx44okncOmll6ac591338WHP/xhvPHGG1ixgn9vEhGZ2blz57BmzRq89dZbuOSSS1LO9+c//xn33Xcf+vv7dYyOKHfYBIUKVmtrK4ALiTjVY/ny5bjnnntYfBMRFYAVK1agtbUVy5cvXzC3A8A999xjcLRE2eMZcCpYQghUVFTgN7/5zYLzPf/886irq9MpKiIiWornn38eN99884LzrFmzBq+99hqWLeN5RCpMPHKpYEmShL/927/FypUrU87z0Y9+FLW1tTpGRURES1FXV4e1a9emfH3lypVoa2tj8U0FjUcvFbTW1la88847SV9buXIl7r33XkiSpHNURESULUmS8OUvfzllG/B33nlHa4JIVKjYBIUK3ic/+Um88sorSV87ceIEbrjhBp0jIiKipThx4gRqamqSvvaJT3wCr776qs4REeUWz4BTwUt1puTqq69m8U1EVIBuvPFGVFVVJUxXr2wSFToW4FTwvvzlL+PcuXMx0y655BJ85StfMSgiIiJaqra2toSTK++88w62bt1qUEREucMmKFQU1q9fjxMnTkA9nCVJwquvvoorr7zS4MiIiCgbc3NzuPLKK2Py+o033ojp6WmDIyNaOp4Bp6Kwbds2LF++HMCFJP2Zz3yGxTcRUQH7+Mc/jk9/+tPajfTLly9n8xMqGizAqSi0trbi/PnzAC4k6W3bthkcERERLVX0yZX33nsPzc3NBkdElBsswKkoXHHFFbj55psh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85v44Ac/aHRYRFTkeAaciPJOlmW8/PLL2LFjB/7lX/4FN9xwAw4ePGh0WFTCZmZmcNddd+HWW2/FJz7xCZw8eRKPPPIIi28i0gULcCLSRfSw9rW1tWhpaeGw9qS73//+99i+fTs+9alP4Y033sDk5CQURcGVV15pdGhEVEJYgBORrtauXZswrP19992H3/3ud0aHRkXs3LlzGBgYwLXXXosDBw7A4/Hg2LFj+OIXv2h0aERUgliAE5Eh6uvrtWHt//M//xNVVVUc1p7yYnx8HDfddBPuv/9+tLa24tVXX8X27duxfPlyo0MjohLFApyIDBM9rH17ezu+8Y1v4LOf/SyHtaecmJ2dRXNzM2699VasW7cOp06dwr59+/ChD33I6NCIqMSxACciw6nD2r/00kuoqKjQhrX/5S9/aXRoVIDC4TAefvhh3Hjjjfj5z3+OQ4cOQVEUXHXVVUaHRkQEgAU4EZnINddcgx/84AfasPbXX389Hn74YZw9e3bB5UKhEJ577jmdoiQjTE9P48yZMwvOc/78eTz11FOoqqqC1+vFo48+ipdeegm33367TlESEaWHBTgRmU70sPb9/f2orq5ecFj7b37zm5BlGTMzMzpHSnp47bXXcPvtt+Mf//EfU87z4x//GDfddBPsdju2bt3Kdt5EZGoswInIlJINa79x40ZMTU3FzPfiiy/ie9/7Hs6ePYu//Mu/ZG8qRebs2bO47bbb8Lvf/Q4jIyMJn/8rr7yC5uZmNDQ0oKysDC+++CL27dsHq9VqUMRERItjAU5Epnb55Zdrw9q/733v04a1f+ONNwAA999/P5YtW4bz58/jN7/5De666y786U9/MjhqyoX33nsPra2tmJmZwXvvvYfly5fjvvvuw/nz5/GHP/wBu3btwg033IATJ05oTZeuv/56o8MmIloUh6InooIhhIDP58NDDz2ESCSCr371q+jr64tpmrJixQrcfffdOHjwICRJMjBaWqq///u/xxNPPBHTNeWyZcvw8MMP49///d/x7rvvYvfu3XA4HFixYoWBkRIRZYYFOBEVnD/+8Y/4p3/6JwwODuJ3v/sdzp8/H/P6smXL0NnZiZ6eHoMipKX613/9Vzz00EMJ7f4lSYLVasU999yDb33rW1i9erVBERIRZY9NUIio4KxatQqXXHIJfv/73ycU38CF3jD27NmDJ554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iIiISEcswImIiIiIdMSRMMnU1JHNiIiI0sGyhgoBuyEkU/v85z+PkZERo8MgMpWpqSn09fXxu0FEVKB4BpyIqMCoV4aYvomIChPbgBMRERER6YgFOBERERGRjliAExERERHpiAU4EREREZGOWIATEREREemIBTgRERERkY5YgBMRERER6YgFOBERERGRjliAExERERHpiAU4EREREZGOWIATEREREemIBTgRERERkY5YgBMRERER6YgFOBERERGRjliAExERERHpiAU4EREREZGOWIATEREREemIBTgRERERkY5YgBMRERER6YgFOBERERGRjliAExERERHpiAU4EREREZGOWIATEREREemIBTgRERERkY5YgBMRERER6YgFOBERERGRjliAExERERHpiAU40f9n7/5D47jv/I+/Jrab1u19VzVFClUi3w8TYShV79JL5IbWjexLat/N5EIl23Kzdf9Y6bR/hHMqHdRCwpg1bgrai8EBC+/C4RNYkm0OosHxP7YO+aBe53DxlssVC2IiJzXV0qO7BO7apul8/zAz3pV2Je1KO7MrPR+wWPuZXx/tSslrP3rP5wMAAOAjAjgAAADgIwI4AAAA4CMCOAAAAOAjAjgAAADgo81BdwAAUNpvf/tbPXjwoKBtfn5eknTv3r2C9k2bNmn79u2+9Q0AUBnDcRwn6E4AAIr7zW9+o6amJn3yySfL7rt//35duXLFh14BAFaDEhQAqGFf/OIX9eKLL+qxx5b/z/WhQ4d86BEAYLUI4ABQ41599VUt98fKxx9/XK+88opPPQIArAYBHABqnGVZ+uxnP1ty++bNm2VZlr7whS/42CsAQKUI4ABQ47Zu3apXXnlFW7ZsKbr9008/1fe+9z2fewUAqBQBHADqwOHDh0veiPn5z39e3/nOd3zuEQCgUgRwAKgDL774okKh0KL2LVu26ODBg3r88ccD6BUAoBIEcACoA1u2bNGhQ4f0mc98pqD9k08+0eHDhwPqFQCgEswDDgB1YmZmRt/+9rcL2r70pS/pV7/6lTZt2hRMpwAAZWMEHADqxDe/+U01NTV5z7ds2aJwOEz4BoA6QwAHgDrx2GOPKRwOe2Uon3zyibq7uwPuFQCgXJSgAEAduX37tr7+9a9Lkp566inNzc3JMIyAewUAKAcj4ABQR5555hnt2LFDkvSDH/yA8A0A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v1/Tefl8XtFodMU3C4ZhqKWlxf26paWlpD669OB5WPo6FT+XDmeMzpgBeMuw2S8ZqIvz371OhQigWRiGoampKR07dszvobghcaP9U1Tv77cz+3769OmarxkKhUrqha+n4eFhtbS01DXOjfTzAzQrZsABAGiQSCSiGzdulNXdXkkmk9Hg4OA6japUNptVNptVJBLx5HoAyhHAAQC+KK6qslm2RHeW65w/f35Va7qlB7XBd+7cua4VUhxzc3MaGxvTxMTEslvVA1hfBHAAgC/a2toqft7sWltblUql3J0pV9Ld3e3ewLneLMvS2bNnK+4wCsA72/0eAABga9po674bKRAI1LW+er1txDEBWxEz4AAAAICHCOAAAACAhwjgAAAAgIcI4AAAAICHuAkTWIOPP/5YV65c8XsYQM1u3brl9xA2tI8//liS+P0GsC7YCROoU29vr959912/hwEAnmMnTGBtCOAA0GSuXLmi48ePb+oyfgCwmbEGHAAAAPAQARwAAADwEAEcAAAA8BABHAAAAPAQARwAAADwEAEcAAAA8BABHAAAAPAQARwAAADwEAEcAAAA8BABHAAAAPAQARwAAADwEAEcAAAA8BABHAAAAPAQARwAAADwEAEcAAAA8BABHAAAAPAQARwAAADwEAEcAAAA8BABHAAAAPAQARwAAADwEAEcAAAA8BABHAAAAPAQARwAAADwEAEcAAAA8BABHAAAAPAQARwAAADwEAEcAAAA8BABHAAAAPAQARwAAADwEAEcAAAA8BABHAAAAPAQARwAAADwEAEcAAAA8NB2vwcAAKgul8vpxz/+cUnbBx98IEn60Y9+VNK+c+dO9ff3ezY2AEB9DNu2bb8HAQCo7A9/+IN27dql3//+93r00UerHvfpp5/qBz/4gcbGxjwcHQCgHixBAYANbPv27Tpx4oS2bdumTz/9tOqHJJ08edLn0QIAVoMZcADY4H72s5/pueeeW/aYXbt26Te/+Y0eeYR5FQDY6PibGgA2uP379+vxxx+v+vhjjz2mcDhM+AaAJsHf1gCwwRmGoZdffrnqGvDPPvtMJ06c8HhUAIB6sQQFAJrABx98oGAwWPGxb3zjG/rVr37l8YgAAPViBhwAmsCTTz6pzs7OsvbHHntMp06d8mFEAIB6EcABoEmEw+GyZSifffaZ+vr6fBoRAKAeLEEBgCYx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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "siamese_net = siamese_model_Canonical_sider()\n",
    "\n",
    "plot_model(siamese_net, show_shapes=True, show_layer_names=True)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true,
    "id": "Mi2yDJQVy52B"
   },
   "source": [
    "### Training algorithm"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "hidden": true,
    "id": "UWWKNk60y52B",
    "outputId": "1ef42590-8e6c-4af4-964b-7050fc4c4909",
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.5371 - accuracy: 0.7464 - mae: 0.3558 - mse: 0.1777 - auc_1: 0.8026\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4952 - accuracy: 0.7785 - mae: 0.3246 - mse: 0.1615 - auc_1: 0.8353\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4847 - accuracy: 0.7785 - mae: 0.3177 - mse: 0.1579 - auc_1: 0.8429\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4767 - accuracy: 0.7866 - mae: 0.3109 - mse: 0.1545 - auc_1: 0.8485\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4728 - accuracy: 0.7858 - mae: 0.3069 - mse: 0.1529 - auc_1: 0.8521\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4684 - accuracy: 0.7876 - mae: 0.3056 - mse: 0.1517 - auc_1: 0.8546\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4642 - accuracy: 0.7896 - mae: 0.3026 - mse: 0.1501 - auc_1: 0.8578\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4619 - accuracy: 0.7912 - mae: 0.3009 - mse: 0.1495 - auc_1: 0.8590\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4576 - accuracy: 0.7920 - mae: 0.2978 - mse: 0.1479 - auc_1: 0.8624\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4538 - accuracy: 0.7916 - mae: 0.2954 - mse: 0.1469 - auc_1: 0.8643\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4517 - accuracy: 0.7952 - mae: 0.2927 - mse: 0.1455 - auc_1: 0.8672\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4476 - accuracy: 0.7948 - mae: 0.2916 - mse: 0.1448 - auc_1: 0.8686\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4428 - accuracy: 0.7985 - mae: 0.2870 - mse: 0.1427 - auc_1: 0.8721\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4395 - accuracy: 0.7990 - mae: 0.2850 - mse: 0.1416 - auc_1: 0.8740\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4374 - accuracy: 0.8031 - mae: 0.2827 - mse: 0.1405 - auc_1: 0.8756\n",
      "79\n",
      "79\n",
      "79\n",
      "79\n",
      "79\n",
      "79\n",
      "79\n",
      "78\n",
      "78\n",
      "78\n",
      "78\n",
      "77\n",
      "77\n",
      "74\n",
      "Epoch 1/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4354 - accuracy: 0.8032 - mae: 0.2816 - mse: 0.1398 - auc_1: 0.8770\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4324 - accuracy: 0.8055 - mae: 0.2791 - mse: 0.1388 - auc_1: 0.8787\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4273 - accuracy: 0.8056 - mae: 0.2767 - mse: 0.1370 - auc_1: 0.8821\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4259 - accuracy: 0.8070 - mae: 0.2741 - mse: 0.1366 - auc_1: 0.8827\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4232 - accuracy: 0.8080 - mae: 0.2736 - mse: 0.1360 - auc_1: 0.8839\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4163 - accuracy: 0.8110 - mae: 0.2688 - mse: 0.1335 - auc_1: 0.8881\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4179 - accuracy: 0.8106 - mae: 0.2692 - mse: 0.1338 - auc_1: 0.8878\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4182 - accuracy: 0.8092 - mae: 0.2705 - mse: 0.1342 - auc_1: 0.8873\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4133 - accuracy: 0.8130 - mae: 0.2671 - mse: 0.1328 - auc_1: 0.8896\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4127 - accuracy: 0.8125 - mae: 0.2661 - mse: 0.1323 - auc_1: 0.8902\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4099 - accuracy: 0.8130 - mae: 0.2637 - mse: 0.1313 - auc_1: 0.8919\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4073 - accuracy: 0.8161 - mae: 0.2635 - mse: 0.1306 - auc_1: 0.8930\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4038 - accuracy: 0.8167 - mae: 0.2594 - mse: 0.1291 - auc_1: 0.8954\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4026 - accuracy: 0.8176 - mae: 0.2585 - mse: 0.1288 - auc_1: 0.8959\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.4019 - accuracy: 0.8159 - mae: 0.2586 - mse: 0.1286 - auc_1: 0.8965\n",
      "81\n",
      "81\n",
      "81\n",
      "81\n",
      "81\n",
      "81\n",
      "80\n",
      "81\n",
      "81\n",
      "80\n",
      "80\n",
      "80\n",
      "80\n",
      "80\n",
      "Epoch 1/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3992 - accuracy: 0.8189 - mae: 0.2575 - mse: 0.1278 - auc_1: 0.8980\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3965 - accuracy: 0.8219 - mae: 0.2551 - mse: 0.1264 - auc_1: 0.8995\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3964 - accuracy: 0.8221 - mae: 0.2550 - mse: 0.1266 - auc_1: 0.8994\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3911 - accuracy: 0.8236 - mae: 0.2506 - mse: 0.1248 - auc_1: 0.9022\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3928 - accuracy: 0.8213 - mae: 0.2520 - mse: 0.1253 - auc_1: 0.9016\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3873 - accuracy: 0.8250 - mae: 0.2490 - mse: 0.1238 - auc_1: 0.9040\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3892 - accuracy: 0.8252 - mae: 0.2490 - mse: 0.1241 - auc_1: 0.9034\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3857 - accuracy: 0.8255 - mae: 0.2479 - mse: 0.1228 - auc_1: 0.9055\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3843 - accuracy: 0.8260 - mae: 0.2463 - mse: 0.1227 - auc_1: 0.9056\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3827 - accuracy: 0.8280 - mae: 0.2457 - mse: 0.1222 - auc_1: 0.9062\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3833 - accuracy: 0.8277 - mae: 0.2454 - mse: 0.1219 - auc_1: 0.9067\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3781 - accuracy: 0.8295 - mae: 0.2429 - mse: 0.1206 - auc_1: 0.9087\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3775 - accuracy: 0.8287 - mae: 0.2424 - mse: 0.1205 - auc_1: 0.9092\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3757 - accuracy: 0.8304 - mae: 0.2401 - mse: 0.1193 - auc_1: 0.9107\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3743 - accuracy: 0.8310 - mae: 0.2393 - mse: 0.1192 - auc_1: 0.9108\n",
      "83\n",
      "82\n",
      "82\n",
      "82\n",
      "82\n",
      "82\n",
      "82\n",
      "82\n",
      "82\n",
      "82\n",
      "82\n",
      "82\n",
      "82\n",
      "81\n",
      "Epoch 1/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3745 - accuracy: 0.8321 - mae: 0.2395 - mse: 0.1190 - auc_1: 0.9108\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3714 - accuracy: 0.8327 - mae: 0.2375 - mse: 0.1180 - auc_1: 0.9125\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3680 - accuracy: 0.8327 - mae: 0.2358 - mse: 0.1175 - auc_1: 0.9135\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3707 - accuracy: 0.8325 - mae: 0.2371 - mse: 0.1180 - auc_1: 0.9128\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3686 - accuracy: 0.8328 - mae: 0.2357 - mse: 0.1173 - auc_1: 0.9137\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3631 - accuracy: 0.8373 - mae: 0.2319 - mse: 0.1151 - auc_1: 0.9166\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3648 - accuracy: 0.8324 - mae: 0.2335 - mse: 0.1164 - auc_1: 0.9152\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3644 - accuracy: 0.8356 - mae: 0.2334 - mse: 0.1159 - auc_1: 0.9156\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3612 - accuracy: 0.8361 - mae: 0.2309 - mse: 0.1151 - auc_1: 0.9171\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3612 - accuracy: 0.8345 - mae: 0.2314 - mse: 0.1149 - auc_1: 0.9173\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3610 - accuracy: 0.8381 - mae: 0.2305 - mse: 0.1147 - auc_1: 0.9173\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3645 - accuracy: 0.8358 - mae: 0.2334 - mse: 0.1160 - auc_1: 0.9156\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3561 - accuracy: 0.8383 - mae: 0.2280 - mse: 0.1133 - auc_1: 0.9197\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3529 - accuracy: 0.8412 - mae: 0.2247 - mse: 0.1120 - auc_1: 0.9212\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3548 - accuracy: 0.8380 - mae: 0.2272 - mse: 0.1132 - auc_1: 0.9199\n",
      "84\n",
      "83\n",
      "83\n",
      "83\n",
      "83\n",
      "83\n",
      "83\n",
      "83\n",
      "83\n",
      "83\n",
      "83\n",
      "83\n",
      "83\n",
      "83\n",
      "Epoch 1/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3544 - accuracy: 0.8403 - mae: 0.2262 - mse: 0.1125 - auc_1: 0.9204\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3543 - accuracy: 0.8397 - mae: 0.2264 - mse: 0.1126 - auc_1: 0.9203\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3531 - accuracy: 0.8422 - mae: 0.2252 - mse: 0.1118 - auc_1: 0.9212\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3500 - accuracy: 0.8420 - mae: 0.2233 - mse: 0.1111 - auc_1: 0.9225\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3493 - accuracy: 0.8424 - mae: 0.2224 - mse: 0.1106 - auc_1: 0.9229\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3485 - accuracy: 0.8432 - mae: 0.2221 - mse: 0.1106 - auc_1: 0.9230\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3495 - accuracy: 0.8423 - mae: 0.2227 - mse: 0.1110 - auc_1: 0.9228\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3514 - accuracy: 0.8407 - mae: 0.2244 - mse: 0.1117 - auc_1: 0.9218\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3461 - accuracy: 0.8438 - mae: 0.2203 - mse: 0.1099 - auc_1: 0.9243\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3469 - accuracy: 0.8451 - mae: 0.2208 - mse: 0.1100 - auc_1: 0.9239\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3436 - accuracy: 0.8448 - mae: 0.2184 - mse: 0.1090 - auc_1: 0.9253\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3430 - accuracy: 0.8451 - mae: 0.2183 - mse: 0.1086 - auc_1: 0.9259\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3418 - accuracy: 0.8463 - mae: 0.2180 - mse: 0.1082 - auc_1: 0.9263\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3395 - accuracy: 0.8468 - mae: 0.2161 - mse: 0.1076 - auc_1: 0.9272\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3435 - accuracy: 0.8454 - mae: 0.2190 - mse: 0.1091 - auc_1: 0.9253\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "83\n",
      "84\n",
      "Epoch 1/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3394 - accuracy: 0.8464 - mae: 0.2160 - mse: 0.1077 - auc_1: 0.9273\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3404 - accuracy: 0.8474 - mae: 0.2172 - mse: 0.1078 - auc_1: 0.9269\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3377 - accuracy: 0.8489 - mae: 0.2148 - mse: 0.1070 - auc_1: 0.9280\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3399 - accuracy: 0.8488 - mae: 0.2159 - mse: 0.1076 - auc_1: 0.9271\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3369 - accuracy: 0.8472 - mae: 0.2139 - mse: 0.1065 - auc_1: 0.9286\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3348 - accuracy: 0.8494 - mae: 0.2135 - mse: 0.1059 - auc_1: 0.9293\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3350 - accuracy: 0.8502 - mae: 0.2126 - mse: 0.1062 - auc_1: 0.9290\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3342 - accuracy: 0.8516 - mae: 0.2121 - mse: 0.1058 - auc_1: 0.9293\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3326 - accuracy: 0.8490 - mae: 0.2118 - mse: 0.1052 - auc_1: 0.9303\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3335 - accuracy: 0.8507 - mae: 0.2116 - mse: 0.1058 - auc_1: 0.9296\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3316 - accuracy: 0.8519 - mae: 0.2106 - mse: 0.1047 - auc_1: 0.9309\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3299 - accuracy: 0.8523 - mae: 0.2101 - mse: 0.1044 - auc_1: 0.9313\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3302 - accuracy: 0.8505 - mae: 0.2100 - mse: 0.1050 - auc_1: 0.9309\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3319 - accuracy: 0.8503 - mae: 0.2107 - mse: 0.1052 - auc_1: 0.9305\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3308 - accuracy: 0.8535 - mae: 0.2099 - mse: 0.1046 - auc_1: 0.9310\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "84\n",
      "85\n",
      "85\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "84\n",
      "Epoch 1/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3295 - accuracy: 0.8521 - mae: 0.2093 - mse: 0.1043 - auc_1: 0.9315\n",
      "Epoch 2/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3247 - accuracy: 0.8549 - mae: 0.2068 - mse: 0.1027 - auc_1: 0.9335\n",
      "Epoch 3/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3270 - accuracy: 0.8529 - mae: 0.2073 - mse: 0.1036 - auc_1: 0.9325\n",
      "Epoch 4/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3265 - accuracy: 0.8552 - mae: 0.2069 - mse: 0.1032 - auc_1: 0.9327\n",
      "Epoch 5/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3248 - accuracy: 0.8551 - mae: 0.2063 - mse: 0.1028 - auc_1: 0.9333\n",
      "Epoch 6/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3228 - accuracy: 0.8550 - mae: 0.2053 - mse: 0.1020 - auc_1: 0.9343\n",
      "Epoch 7/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3187 - accuracy: 0.8584 - mae: 0.2016 - mse: 0.1007 - auc_1: 0.9360\n",
      "Epoch 8/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3235 - accuracy: 0.8550 - mae: 0.2060 - mse: 0.1024 - auc_1: 0.9341\n",
      "Epoch 9/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3210 - accuracy: 0.8565 - mae: 0.2034 - mse: 0.1018 - auc_1: 0.9350\n",
      "Epoch 10/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3217 - accuracy: 0.8549 - mae: 0.2045 - mse: 0.1019 - auc_1: 0.9347\n",
      "Epoch 11/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3241 - accuracy: 0.8543 - mae: 0.2062 - mse: 0.1025 - auc_1: 0.9338\n",
      "Epoch 12/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3211 - accuracy: 0.8541 - mae: 0.2046 - mse: 0.1019 - auc_1: 0.9348\n",
      "Epoch 13/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3215 - accuracy: 0.8549 - mae: 0.2040 - mse: 0.1016 - auc_1: 0.9350\n",
      "Epoch 14/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3184 - accuracy: 0.8571 - mae: 0.2018 - mse: 0.1007 - auc_1: 0.9361\n",
      "Epoch 15/15\n",
      "235/235 [==============================] - 1s 5ms/step - loss: 0.3202 - accuracy: 0.8551 - mae: 0.2030 - mse: 0.1009 - auc_1: 0.9358\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "85\n",
      "7\n"
     ]
    }
   ],
   "source": [
    "# models = [siamese_net for task in sider_tasks_final]\n",
    "Epoch_S = 15\n",
    "l = []\n",
    "r = []\n",
    "lbls = []\n",
    "for i , data in enumerate(train_dataset):\n",
    "    smiles, embbed_drug, onehot_task, embbed_task, lbl, task_name = data\n",
    "    l.append(embbed_drug[0])\n",
    "    r.append(embbed_task)\n",
    "    lbls.append(lbl.tolist())\n",
    "\n",
    "l = np.array(l).reshape(-1,512,1)\n",
    "r = np.array(r).reshape(-1,512,1)\n",
    "lbls=np.array(lbls)\n",
    "\n",
    "history = History()\n",
    "\n",
    "P = siamese_net.fit([l, r], lbls, epochs = Epoch_S, shuffle=True, batch_size=128, callbacks=[history])\n",
    "\n",
    "for j in range(1000):\n",
    "    C=1\n",
    "    Before = int(P.history['accuracy'][-1]*100)\n",
    "    for i in range(2,Epoch_S+1):\n",
    "        if  int(P.history['accuracy'][-i]*100)== Before:\n",
    "            C=C+1\n",
    "        else:\n",
    "            C=1\n",
    "        Before=int(P.history['accuracy'][-i]*100)\n",
    "        print(Before)\n",
    "    if C==Epoch_S:\n",
    "        break\n",
    "    P = siamese_net.fit([l, r], lbls, epochs = Epoch_S, shuffle=True, batch_size=128, callbacks=history)\n",
    "print(j+1)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "heading_collapsed": true,
    "id": "QVF4gne7y52D"
   },
   "source": [
    "### Model evaluation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {
    "hidden": true,
    "id": "vOrTcoNLy52F"
   },
   "outputs": [],
   "source": [
    "valid_ds = {}\n",
    "\n",
    "for i, task in enumerate(sider_tasks_test):\n",
    "    temp = []\n",
    "    for j , data in enumerate(valid_dataset):\n",
    "        smiles, embbed_drug, onehot_task, embbed_task, lbl, task_name = data\n",
    "        if task ==  task_name:\n",
    "            temp.append(data)\n",
    "    \n",
    "    valid_ds[task] = temp"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "hidden": true,
    "id": "ZjQ0tZSJy52G",
    "outputId": "134a0ef5-bcb8-466e-ed15-7d508bf4faf6"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Renal and urinary disorders : \n",
      "45/45 [==============================] - 0s 845us/step - loss: 0.4963 - accuracy: 0.7491 - mae: 0.2939 - mse: 0.1625 - auc_1: 0.8426\n",
      "Pregnancy, puerperium and perinatal conditions : \n",
      "45/45 [==============================] - 0s 867us/step - loss: 0.8834 - accuracy: 0.4723 - mae: 0.4900 - mse: 0.3014 - auc_1: 0.7537\n",
      "Ear and labyrinth disorders : \n",
      "45/45 [==============================] - 0s 823us/step - loss: 0.6332 - accuracy: 0.6797 - mae: 0.3536 - mse: 0.2070 - auc_1: 0.8442\n",
      "Cardiac disorders : \n",
      "45/45 [==============================] - 0s 823us/step - loss: 0.4004 - accuracy: 0.8157 - mae: 0.2556 - mse: 0.1274 - auc_1: 0.8788\n",
      "Nervous system disorders : \n",
      "45/45 [==============================] - 0s 801us/step - loss: 0.2161 - accuracy: 0.9201 - mae: 0.1468 - mse: 0.0646 - auc_1: 0.8967\n",
      "Injury, poisoning and procedural complications : \n",
      "45/45 [==============================] - 0s 823us/step - loss: 0.5174 - accuracy: 0.7540 - mae: 0.3019 - mse: 0.1667 - auc_1: 0.8060\n"
     ]
    }
   ],
   "source": [
    "task_scores = [sider_tasks_test for sider_tasks_test in range(len(sider_tasks_test))]\n",
    "\n",
    "for i, task in enumerate(sider_tasks_test):\n",
    "    print(task,\": \")\n",
    "\n",
    "    y_test = []\n",
    "    l_val = []\n",
    "    r_val = []\n",
    "    lbls_valid = []\n",
    "    for data in valid_ds[task]:\n",
    "       \n",
    "        smiles, embbed_drug, onehot_task, embbed_task, lbl, task_name = data\n",
    "        l_val.append(embbed_drug[0])\n",
    "        r_val.append(embbed_task)\n",
    "        lbls_valid.append(lbl)\n",
    "            \n",
    "    l1 = np.array(l_val)\n",
    "    r1 = np.array(r_val)\n",
    "    lbls_valid = np.array(lbls_valid)\n",
    "\n",
    "    score = siamese_net.evaluate([l1,r1],lbls_valid)\n",
    " \n",
    "    result =(score[1], score[4])\n",
    "    task_scores[i] = task,result"
   ]
  }
 ],
 "metadata": {
  "colab": {
   "collapsed_sections": [
    "DQuTm_lmlOOM",
    "ZUo6iyu_Hwk4",
    "2c_4DEdVIBw4",
    "TqRcDqfVg1-u",
    "4sXOF78fi_l1",
    "qgEyQDvTR0dc",
    "JYgeHvfDR_G-",
    "LQNN1GRCiSpw",
    "JlhliyMkZLny",
    "G2xxKRnXk_bT",
    "PcFWBaEMSFB7",
    "VoOtM-2vik1P",
    "Ub4lZM_hjD42",
    "0dj6NCbDx6KH",
    "0fI1XZ0bSKR-",
    "sib1-l7xivgX",
    "NqdDDrG9jG2X",
    "Zmg-EGEczLAr",
    "X6Df06l0i7r2",
    "ZPVtZ1ZejLDU",
    "Gha2SSiZzQpP",
    "LB42ZdTCyR-N",
    "KcaEHmQMcFau",
    "Mi2yDJQVy52B",
    "QVF4gne7y52D",
    "u8rUwI6DGHfr",
    "g7JX0liYGHfu",
    "ScVDqpneGHf3",
    "c5oS9piaGHf7",
    "wUV7a4ZXGHf9",
    "vuvzISEVGHf-",
    "y5y2ITukGHf_",
    "rUaD5zAqOzPP"
   ],
   "provenance": []
  },
  "gpuClass": "standard",
  "hide_input": false,
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.16"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
